FlowRunner
PricingContact
Theme
Start Free

Virtuagym

Scheduling

Connect AI agents to Virtuagym, fitness club and coaching management software. Agents create club members and employees, book them into events, assign credits and workouts, register visits, and raise club invoices.

31 actions Custom auth available
A class pack purchase is recorded in the point of sale or e-commerce system
Agent reads the buyer, the pack, the credit amount and the service type
Agent runs Create Or Update Club Member matched on External ID
Agent runs List Member Credits to read the member's current balance for that service type
Agent fixes a deterministic Transaction ID so a retry cannot assign the credits twice
Agent posts the purchase, the balance before and after, and the invoice rows it would raise
The club manager approves before Assign Member Credits and Create Club Invoice run

What This Integration Enables

Virtuagym is fitness club and coaching management software, and the reason it earns automation is that a gym's systems of record are almost never one system. The till, the website, the access hardware, the coaching app and the accounting ledger all know something about the same member, and Virtuagym is where those facts have to agree. This connector wraps the Virtuagym Public API v1 across the whole member lifecycle. Agents list and read club members with paging by From ID, create them, update them, and upsert them on your own External ID so an outside system stays the source of identity. Activate Club Member User Account stands up the Virtuagym user profile a member needs before they can log into the app or record body measurements. Staff records work the same way, with privileges edited additively so granting a role never quietly strips another.

From there the surface follows the day. Membership definitions and instances expose the product catalog and the individual contracts with their start, end and cancellation flags. Club events return classes and appointments with attendee counts, maximum places and bookability, and Book Member Into Event, Update Event Booking Ticket and Cancel Event Booking manage a seat in one of them. Register Club Visit feeds check-ins and check-outs into the Visitor Registration app, which is how turnstiles and badge readers reach the club record. Assign Member Credits moves a balance for one member and one service type. Create Club Invoice raises a charge from product rows with per-row tax. Member notes, body measurements and workout assignment cover the coaching side. There are no triggers: Virtuagym documents no webhook subscription endpoint, so change detection is polling the list actions with their sync_from or from_id cursor, and from_id is the pager to prefer because several records can share the same edit timestamp and a timestamp cursor alone cannot page past them.

Without FlowRunner

Purchases rekeyed into the club system Someone copies a pack sale from the till into Virtuagym by hand later the same day
Credit balances corrected after complaints A member finds out at the desk that the class pack they bought never landed
Invoices raised in a separate pass Retail and personal training charges are batched up and entered at the end of the week

With FlowRunner

Purchases upserted on the sale Create Or Update Club Member matches on your own external id, so one buyer stays one member
Credit balances read before they are changed List Member Credits shows the balance the assignment is about to move
Invoices raised against an approved figure Create Club Invoice runs on rows a person has seen, with the totals it will produce

Use Case Scenarios

Point of Sale to Club Account

A class pack sells through the website. The agent runs Create Or Update Club Member on the buyer's external id, so a returning customer updates rather than duplicating, then reads List Member Credits to see the balance for that service type before touching it. It assigns the purchased credits with a Transaction ID derived from the order number, which makes a retry a safe no-op rather than a second grant, and raises the matching charge with Create Club Invoice. The member's balance is correct before they arrive, and the ledger has an invoice that ties back to the order.

Class Fill and Waitlist

On a schedule, the agent runs List Club Events across the coming week and compares attendees against maximum places to find classes running well under capacity. It cross checks List Event Participants for the same window, drafts an offer to lapsed members it finds by crossing List Club Visits against List Club Members, and books responders with Book Member Into Event. Virtuagym rejects a booking when the class is full, when the event is not bookable, or when the member lacks the required credits, and the agent routes each of those outcomes differently instead of treating them all as a failure.

Coaching Intake

A body composition scan is uploaded after an assessment. The agent extracts the measurements, confirms the member has an activated Virtuagym profile, and writes them with Save Member Bodymetric, which resolves units from the member's own account settings rather than the ones supplied. It then schedules the matching plan with Assign Member Workout across the chosen weekdays, and logs the assessment against the member with Create Member Note naming the coach as author. The coaching record is built from the assessment rather than typed up after it.

Human-in-Loop Highlight

The gate on Virtuagym sits at the money boundary, and Create Club Invoice is where it lands. The action builds an invoice from product rows, each with a name, a price including VAT, an amount and a club tax id, and it returns the invoice with its guid, id and calculated VAT split. That is a charge attached to a named member's account, visible to them, and it exists in the club's financial record from the moment the call returns. Its usual partner in the same flow carries a second hazard worth naming: Assign Member Credits deduplicates on the Transaction ID, and when that field is left empty Virtuagym generates a fresh one per call, so a retried flow grants the credits a second time rather than reporting the work already done. An agent that gets both right is doing quiet, correct arithmetic on a customer's balance and a customer's bill. An agent that gets either wrong has overcharged a member or given away a class pack. So the agent assembles and stops: it posts the member resolved by external id, the balance read from List Member Credits, the Transaction ID it intends to use, and the exact invoice rows with their totals, then asks the club manager: "Anna Kovac, external id POS-44120. Assign 10 entries credits, balance moves from 2 to 12, transaction id ORD-88431. Raise invoice for 10 Class Pack at 89.00 including 21 percent VAT. Approve, adjust the rows, or credit only?" One person confirms, and both writes run against a figure a human has actually read.

Agent processes routinely
Detects exception requiring judgment
Clear match Continues automatically
Ambiguous Routes to human via preferred channel
Human decides
Agent resumes with decision

Agent Capabilities

31 actions

Members

6
  • List Club Members Retrieves members of the configured club, optionally narrowed by an exact identifier such as email address, external id, own member id or RFID tag. Results are paginated, so pass either Sync From (a timestamp in milliseconds that returns only members edited since then) or From ID (the highest member id already processed, starting at 0). From ID is the more reliable pager because several members can share the same edit timestamp. Set Include Related to also return the member's memberships in the same call.
  • Get Club Member Retrieves a single club member by their Virtuagym member id, returning profile details such as name, email, gender, birthday, address, phone numbers and activity status. Set Include Related to embed the member's memberships in the same response.
  • Create Club Member Creates a new member in the configured club and returns the created record including the new member_id. First name and last name are mandatory. When an email address is supplied, Virtuagym sends the member an invitation according to the club's auto invite setting. Store the returned member_id, it identifies the member in every other action.
  • Update Club Member Updates an existing club member and returns the updated record. Only the fields you supply are changed. Set Active to false to deactivate a member immediately, or use Unsubscribe Date to schedule deactivation on a future date. Virtuagym returns statuscode 420 with "No member found" when the member does not belong to the configured club.
  • Create Or Update Club Member Upserts a club member matched on External ID, creating the member when no match exists and updating it otherwise. Virtuagym answers with statuscode 201 for a creation and 200 for an update. When more than one member in the club carries the same external id the call fails with "More members with external Id", and concurrent upserts of the same external id return statuscode 423.
  • Activate Club Member User Account Creates the Virtuagym user profile for an existing club member, or connects that member to a user account that already exists. The member is located through a single identifier (member id, external id, own member id, RFID tag, email or birthday), and the call fails when the search matches more than one member. Set Connect To Existing when the email already belongs to a Virtuagym user, otherwise Virtuagym returns "This user email is already in use please connect instead".

Employees

4
  • List Club Employees Retrieves the staff records of the configured club, including each employee's privileges string (for example "default,club_manager"). Results are paginated, so pass either Sync From (a timestamp in milliseconds that returns only employees edited since then) or From ID (the highest member id already processed, starting at 0). From ID is the more reliable pager because several employees can share the same edit timestamp.
  • Get Club Employee Retrieves a single club employee by their Virtuagym member id, returning profile details and the privileges currently granted to that staff member.
  • Create Club Employee Creates a new staff member in the configured club and returns the created record including the new member_id. First name and last name are mandatory. Every employee automatically receives the Default privilege in addition to the ones you grant. When an email address is supplied, Virtuagym sends the employee an invitation according to the club setting.
  • Update Club Employee Updates an existing staff member and returns the updated record. Only the fields you supply are changed. Privileges are edited additively: Grant Privileges adds roles and Revoke Privileges removes them, so an employee's other roles stay intact. Virtuagym returns statuscode 420 with "Not found" when the employee does not belong to the configured club.

Memberships

2
  • List Membership Definitions Retrieves the membership products the configured club offers, each with its id, name, notes and contract duration. These definitions are the catalog that individual member contracts (membership instances) refer to.
  • List Membership Instances Retrieves the individual membership contracts held by club members, including start date, contract start and end dates, and the active, paused, cancelled, stopped and completed flags. Filter by member to get one person's contract history. Pass either Sync From or From ID to page through the results, and prefer From ID because several contracts can share the same edit timestamp.

Events

2
  • List Club Events Retrieves scheduled classes and appointments of the configured club, returning start and end times in the club's own timezone plus attendee count, maximum places, bookability and cancellation windows. Narrow the result with a time window, a schedule or a member (which returns the events that member is booked into). Start and end timestamps are Unix timestamps in milliseconds and must not be negative.
  • Get Club Event Retrieves a single scheduled class or appointment by its event id, returning its title, schedule, start and end times, instructor, attendee count, maximum places and cancellation state. The presence_saved flag tells you whether the instructor has confirmed attendance, which is when the participant records for the event become reliable.

Bookings

4
  • List Event Participants Retrieves the bookings of the configured club, each linking a member to an event and carrying the presence, absence reason, payment and ticket flags. Filter by a single event, or leave the event empty and pass a time window to get the bookings of every event starting in that range. When no window is given Virtuagym defaults to events starting between one month ago and one month ahead.
  • Book Member Into Event Books a club member into a scheduled event and returns the new event_participant_id, which you need in order to update or cancel the booking later. Both the member and the event must belong to the configured club. Virtuagym rejects the booking when the class is full (statuscode 430), when the event is not bookable (430) or when the member lacks the credits the event requires (432). Enable Send Email to have Virtuagym notify the member of the confirmed booking.
  • Update Event Booking Ticket Marks the ticket of an existing booking as printed or not printed. Ticket Printed is the only attribute the Virtuagym booking API allows to be updated, and it is always sent with the request.
  • Cancel Event Booking Deletes an event participant record, which cancels that member's booking for the event. The booking must still be active and belong to the configured club, otherwise Virtuagym answers with "no active event participant found". There is no undo, and rebooking creates a new event_participant_id.

Visits

2
  • List Club Visits Retrieves the check-in and check-out records of the configured club, as shown in the Virtuagym Visitor Registration app. Each visit carries the member id, the check-in and check-out timestamps in milliseconds, and a status of ok, warning or rejected with an accompanying message. A check-out timestamp of 0 means the member has not checked out yet.
  • Register Club Visit Registers a check-in or check-out for a club member, which is how access-control hardware and turnstiles feed the Virtuagym Visitor Registration app. Identify the member by either member id or RFID tag. A check-out always reuses the visit id of its preceding check-in, so the pair is stored as a single visit. A member can check in repeatedly without checking out, but a check-out without a prior check-in is rejected.

Credits

2
  • List Member Credits Retrieves the currently active credit balances of club members. Each entry is the balance of one member for one service type (for example access, drinks or entries) and reports both the numeric amount and whether the member holds unlimited credits for that service. Filter by member to read a single person's balances.
  • Assign Member Credits Adds credits to a club member for one service type, or switches that service type to unlimited. Identify the member by member id or by email, and supply either a credit amount greater than zero or the unlimited flag. Credits are assigned for one member and one service type per call, so repeat the action for further combinations. Virtuagym deduplicates on the Transaction ID, so resending the same request with the same id is a safe no-op that reports "Already picked up or completed". A random Transaction ID is generated when you leave it empty, which means a retry would then add the credits a second time.

Invoices

2
  • Create Club Invoice Creates an invoice for a club member from one or more product rows and returns the invoice with its guid, id, totals and generated rows. Each row needs a name, a price including VAT, an amount and a club tax id (use 0 for no tax). Virtuagym derives the invoice name from the row names and calculates the VAT split per row from the tax id. At least one row is mandatory. Routed for sign-off, because the charge lands on a named member's account.
  • Get Club Invoice Retrieves a club invoice by its id, returning the parent invoice with its totals, currency, payment method, paid status and timestamps, together with the child rows that make up the invoice. Each row reports its own price, price excluding VAT, VAT amount, income category and the club tax that was applied.

Notes

4
  • List Member Notes Retrieves the notes attached to club members on their clients and staff page. Filter by member, by note type or by both. Leaving a filter empty returns the notes of every member or of every type. Each note reports its id, the member it belongs to, the note text, its type and the creation timestamp.
  • Create Member Note Adds a note to a club member and returns the new note_id, which you need in order to update or delete the note later. The author is identified by the Author parameter, which must be a member of the same club or super club and must have an activated Virtuagym profile. The note text can be up to 16777215 characters.
  • Update Member Note Updates the text or the type of an existing member note. At least one of Note Text and Note Type must be supplied, otherwise Virtuagym rejects the request. The note must belong to the configured club.
  • Delete Member Note Deletes a member note by its id. The note must belong to the configured club, otherwise Virtuagym answers with "note with note_id not found in club". Notes cannot be restored through the API.

Bodymetrics

2
  • List Member Bodymetrics Retrieves the body measurement history of a club member, such as weight, height, BMI, fat percentage, muscle mass and fitness test repetitions. The member is mandatory. Narrow the result to one measurement by selecting a Metric Type. Each entry reports the value, the unit resolved from the member's own account settings, the measurement timestamp and a deleted flag.
  • Save Member Bodymetric Records a body measurement for a club member and returns the id of the stored entry. The member must have an activated Virtuagym user profile. Virtuagym converts the value into the unit configured in the member's own account settings, so weight and bone mass accept kg or lbs and height and waist accept cm or inch. The repetition metrics (crunches, lunges and both push-up variants) accept whole numbers only.

Workouts

1
  • Assign Member Workout Schedules a workout plan into a club member's activity calendar by repeating it on the chosen weekdays for a number of weeks from a start date. Standard workouts, club workouts and a member's own private workout can be assigned. Coach workouts can be assigned to any member when the club has coach can coach all enabled, and only to that coach's own clients otherwise. The target user must be an active member of the club.

Frequently Asked Questions

What can FlowRunner do with Virtuagym?

FlowRunner agents can run List Club Members, Get Club Member, and Create Club Member in Virtuagym, plus 28 more actions.

Does connecting Virtuagym to FlowRunner require OAuth?

Virtuagym uses a custom authentication method to connect to FlowRunner.

Can Virtuagym trigger a FlowRunner workflow automatically?

Virtuagym doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.

Start building with Virtuagym

$100 in credits. No card required. Connect in minutes.