FlowRunner
PricingContact
Theme
Start Free

OfficeRnD

ERP

Connect AI agents to OfficeRnD Flex, the coworking and flexible workspace management platform. Agents onboard members and companies, check them in and out, book space, open memberships and tickets, and read the invoices billing produces.

1 trigger 38 actions Custom auth available
On OfficeRnD Event fires when a booking, member or company record changes
Get Booking or Get Member reads the full record, since the payload arrives unverified
Get Resource Status reads both `status` and `ownStatus`, because a parent office reports differently from its desks
The change is confirmed against the source system that was supposed to have made it
The cancellation is staged with the Silent, Enforce Booking Policy and Skip Cancellation Policy switches set explicitly
The community manager is shown the booking, the member, the resource and any fee the change would raise
A person confirms before Cancel Booking runs, because it can charge the member a fee and email them about it

What This Integration Enables

OfficeRnD Flex runs coworking and flexible workspace, and the reason to automate against it is that a flex space is four businesses wearing one coat: a community, a property, a subscription business and a helpdesk. This connector covers all four rather than picking one. On the community side, agents read and write members through Get Members, Get Member, Create Member, Update Member, Update Member Status and Update Member Company, read and write companies, and run the sales pipeline through Get Opportunities, Create Opportunity and Update Opportunity. Check-ins are fully covered, and this is a genuine write surface rather than a report: Check In Member and Check Out Member record attendance, and Get Check-Ins reads it back, which is what makes occupancy reporting possible from something other than a door sensor. On the space side, Get Locations, Get Floors, Get Resources and Get Resource are the inventory, and bookings are managed end to end through Get Bookings, Get Booking Occurrences, Get Booking, Create Booking, Update Booking and Cancel Booking.

Memberships and billing are not symmetrical, and the difference matters when you design a flow. Memberships are readable and creatable: Get Memberships reads them, Create Membership signs a member or company up to a plan, and Get Plans reads the plan catalog. There is no update or cancel for a membership here. Billing is read only: Get Invoices, Get Invoice and Get Invoice Documents retrieve invoices with their payment status, due date and documents, and nothing in this connector raises, edits, voids or settles one. So this is the right connector for dunning, revenue reporting and aging analysis, and the wrong place to look for invoice generation. Support is covered through Get Tickets, Create Ticket and Update Ticket, with the caveat that Get Tickets supports no attribute filters at all, accepting only pagination and field selection, so a narrower set has to be filtered inside the flow.

Delete operations are deliberately not exposed. The vendor API can delete members, companies, memberships, bookings, opportunities, visits and fees, and none of those are surfaced here, so a flow cannot destroy an OfficeRnD record. Update Member Status set to Former and Cancel Booking are the closest available and both are reversible in the admin. Payment card endpoints are also deliberately not exposed, keeping cardholder data out of flow variables. Some conventions to build around: all list endpoints use cursor pagination with a page size of 50 that is also the maximum, so a larger limit is capped rather than honored, and each list returns cursorNext and cursorPrev alongside results, which you pass back until cursorNext comes back null. Get Bookings returns one entry per single booking and one per recurring series rather than per occurrence, so individual instances of a recurring series come from Get Booking Occurrences, which requires Series Start and Series End and supports a window of at most one year when pagination is not used. Get Resource Status returns both status and ownStatus for a parent resource containing children, so a private office with one occupied desk reports status: partially_occupied and ownStatus: available, and reading the wrong one produces a confidently wrong occupancy report. Update Booking requires Resource, Start and End on every call per the vendor schema, so all three are sent even when only one is changing.

This connector does ship a trigger. On OfficeRnD Event creates one OfficeRnD webhook per configured trigger through the /webhooks endpoint and deletes it when the trigger is removed, and the payload is the documented envelope with eventId, eventType, objectId, object and the raw data object surfaced, because the keys sitting beside object vary by event type. Creating and deleting webhooks requires the webhook create and delete permissions on the application. Two things are worth knowing. A delete that fails is logged and skipped rather than aborting cleanup, so an orphaned endpoint can survive under Settings, Developer Tools, Webhooks and is worth checking if triggers are removed repeatedly. And deliveries are not signature verified: OfficeRnD stores a secret on each webhook and documents an HMAC SHA-256 format for its partner Connect payloads, but does not publish the header name or the canonical signing string for webhook deliveries, so rather than guess and risk rejecting valid events the connector accepts deliveries on the FlowRunner callback URL without verifying them. Treat the callback URL as a secret, and do not let this trigger be the sole authority for an irreversible action.

Without FlowRunner

Onboarding is a sequence of screens A new member is created, then a company, then a membership, each in a different place and often on a different day
Bookings live in two calendars A room is booked in a chat message and in OfficeRnD, and the two disagree by Thursday
Aging invoices are found when someone looks Overdue invoices sit in the billing view until a month end review surfaces them

With FlowRunner

Onboarding is one flow Create Member, Create Company and Create Membership run in sequence off a single confirmed signup
Bookings are created from the source of truth Create Booking runs from the scheduler that owns the event, and Cancel Booking runs when that event is cancelled
Aging is pushed to an owner Get Invoices filtered by payment status and due date produces a named list before anyone asks for one

Use Case Scenarios

A signed contract that provisions itself

A deal reaches closed won in the CRM, and today that means somebody opens OfficeRnD and works through three screens. The agent reads the closed won deal from HubSpot, calls Get Companies to check whether the organisation already exists, and Create Company where it does not. It calls Get Plans to resolve the plan the contract names to a real plan record rather than a label, then Create Member for each named person on the contract, Update Member Company to attach them to the organisation, and Create Membership to sign the company up to the resolved plan with the agreed start date. Update Opportunity closes the matching record in the OfficeRnD pipeline so the two systems do not both think the deal is open. The community manager gets a summary in Slack with the members created and the membership start date, and the new members are announced in the community channel. What used to be a half hour of screen work is a confirmation.

Occupancy and utilisation built from what actually happened

A flex operator prices space on utilisation, and utilisation assembled from a booking calendar overstates it, because booked and used are different things. On a schedule the agent calls Get Booking Occurrences for the coming and preceding week, supplying Series Start and Series End, because Get Bookings returns one entry per recurring series rather than per occurrence and a series counted as one booking undercounts the room. It calls Get Check-Ins for the same window to read who was actually in the building, and Get Resource Status across the resource list, reading status for a parent office including its desks and ownStatus for the office itself, so a private office with one occupied desk is not reported as fully occupied. Get Floors and Get Locations give the results a shape somebody can act on. The joined view lands in Google Sheets as booked hours against attended hours per resource per floor. Nothing is written back, which is what makes this safe to run every morning.

An aging report that finds its own owner

Chasing payment is a job that only happens when somebody remembers. On a schedule the agent calls Get Invoices filtered by payment status and due date to find invoices awaiting payment past their due date, paging through with cursorNext until it comes back null. For each it calls Get Invoice for the detail and Get Invoice Documents for the document itself, then Get Member or Get Company to resolve the account and its manager. It posts a per account message to the responsible manager through Slack with the invoice number, amount, days overdue and a link, and appends the full aging picture to Google Sheets. It does not send anything to the member and it does not touch the invoice, because billing is read only through this connector: nothing here raises, edits, voids or settles an invoice. The output is a prompt to a human with everything they need to act, which is the honest limit of what this surface supports.

Human-in-Loop Highlight

Cancel Booking is the gate, and the case for it is built from two facts that sit at opposite ends of this connector. The first is money and visibility. Creating, updating and cancelling a booking can generate charges: a booking may produce fees and consume credits according to the resource rate, and a cancellation may generate a cancellation fee under the cancellation policy. The Silent, Enforce Booking Policy and Skip Cancellation Policy switches control notification emails and policy enforcement, which means the same call can either quietly reverse a booking or charge a member a fee and email them about it, depending on three booleans. The second fact is where the instruction to cancel usually comes from. On OfficeRnD Event is the natural trigger for this flow, and its deliveries are not signature verified. OfficeRnD stores a secret on each webhook and documents an HMAC format for its partner Connect payloads, but does not publish the header name or the canonical signing string for webhook deliveries, so the connector accepts deliveries without verifying them rather than guessing and dropping legitimate events. That is the right engineering call and it has a direct consequence: an event payload arriving at the callback URL cannot be proven to have come from OfficeRnD, and it should not by itself be allowed to charge a member. Add that Update Booking requires Resource, Start and End on every call, so an agent adjusting an end time resends the resource and start too, and a mistake there moves somebody's meeting into a different room rather than failing. So the agent treats the event as a signal, reads the record itself with Get Booking, and asks before it charges. It posts to the community manager: "The scheduler says the offsite on Thursday is cancelled, and an On OfficeRnD Event delivery agrees, but that delivery is unverified so I have read the booking directly. Booking 8841, Boardroom, Thursday 09:00 to 17:00, held by Kaur for Northlight Ltd, recurring series with 3 more occurrences after this one. Cancelling inside the policy window raises a cancellation fee against Northlight and emails Kaur. I can skip the cancellation policy so no fee is raised, or cancel silently so no email goes out, or both. Tell me which, and whether to cancel this occurrence or the whole series." The manager answers once. This is the human-in-the-loop moment in workspace operations: an agent can read a booking, a policy and a fee schedule, and only a person can decide to charge a member on the word of an event it cannot authenticate.

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

Agent Capabilities

38 actions

Members

7
  • Get Members Returns members with cursor pagination, 50 per page and 50 is also the maximum. Pass `cursorNext` back until it returns null.
  • Get Member Returns a single member record.
  • Get Members Count Returns the member count, for headline occupancy and growth reporting without paging the full list.
  • Create Member Creates a member, the first step of provisioning a person into the space.
  • Update Member Updates an existing member record.
  • Update Member Status Changes a member's status, including setting them to Former. This is the closest thing to a removal in this connector, and it is reversible in the admin.
  • Update Member Company Attaches a member to a company, which is what makes a person billable against an organisation rather than individually.

Companies

4
  • Get Companies Returns companies with cursor pagination.
  • Get Company Returns a single company record.
  • Create Company Creates a company, the organisation a team membership hangs from.
  • Update Company Updates an existing company record.

Check-Ins

3
  • Get Check-Ins Returns check-in records, which is what turns a booking calendar into an attendance picture.
  • Check In Member Records a member check-in.
  • Check Out Member Records a member check-out, closing the attendance window.

Opportunities

3
  • Get Opportunities Returns sales pipeline opportunities.
  • Create Opportunity Creates an opportunity, used to push a lead from an external CRM into the OfficeRnD pipeline.
  • Update Opportunity Updates an opportunity, including closing the OfficeRnD record when the deal closes elsewhere.

Bookings

6
  • Get Bookings Returns one entry per single booking and one entry per recurring series, not per occurrence. Counting a series as one booking undercounts room usage, so use Get Booking Occurrences for utilisation.
  • Get Booking Occurrences Returns the individual instances of a recurring series. Requires Series Start and Series End and supports a window of at most one year when pagination is not used.
  • Get Booking Returns a single booking record. The read to run when an unverified event says a booking changed.
  • Create Booking Creates a booking. May produce fees and consume credits according to the resource rate, and the Silent and Enforce Booking Policy switches control notification and policy enforcement.
  • Update Booking Updates a booking. Requires Resource, Start and End on every call per the vendor schema, so send all three even when only one is changing.
  • Cancel Booking Cancels a booking. May generate a cancellation fee under the cancellation policy and email the member, with Skip Cancellation Policy and Silent controlling both, which is why this runs behind an approval. Reversible in the admin.

Space

5
  • Get Locations Returns the locations in the organisation.
  • Get Floors Returns floors, the level that most occupancy reporting is grouped by.
  • Get Resources Returns bookable resources, meeting rooms, desks and offices.
  • Get Resource Returns a single resource record.
  • Get Resource Status Returns both `status` and `ownStatus` for a parent resource containing children. A private office with one occupied desk reports `status: partially_occupied` and `ownStatus: available`, so pick the field that matches the question being asked.

Memberships

3
  • Get Memberships Returns memberships, the subscriptions a member or company holds.
  • Create Membership Signs a member or company up to a plan. There is no update or cancel for a membership in this connector, so changes are made in the admin.
  • Get Plans Returns the plan catalog, used to resolve a contract's plan name to a real plan record before signing anyone up to it.

Billing

3
  • Get Invoices Returns invoices filtered by payment status and due date. Read only, and the basis of a dunning or aging flow.
  • Get Invoice Returns a single invoice. Read only.
  • Get Invoice Documents Returns the documents attached to an invoice. Read only: nothing in this connector raises, edits, voids or settles an invoice.

Tickets

3
  • Get Tickets Returns member support tickets. This endpoint supports no attribute filters, accepting only pagination and field selection, so narrow the set inside your flow.
  • Create Ticket Raises a member support ticket, for example from an inbound message in a chat channel.
  • Update Ticket Updates a ticket as it is worked, so the member facing record reflects what the helpdesk did.

Organization

1
  • Get Organization Returns the organization record, useful as a connection check for the configured credentials and slug.

Triggers

1 triggers

Event Triggers

1
  • On OfficeRnD Event Fires on OfficeRnD system webhook events across members, companies, bookings, opportunities, check-ins, memberships, invoices and tickets. Creates one OfficeRnD webhook per configured trigger and deletes it when the trigger is removed. The payload surfaces `eventId`, `eventType`, `objectId`, `object` and the raw `data` object, since the keys beside `object` vary by event type. Deliveries are not signature verified, because OfficeRnD does not publish the header name or canonical signing string for webhook deliveries, so treat the callback URL as a secret, read the record back with the matching Get action, and do not let this trigger be the sole authority for a fee-generating or member-visible action.

Frequently Asked Questions

What can FlowRunner do with OfficeRnD?

FlowRunner agents can run Get Members, Get Member, and Create Member in OfficeRnD, plus 35 more actions.

Does connecting OfficeRnD to FlowRunner require OAuth?

OfficeRnD uses a custom authentication method to connect to FlowRunner.

Can OfficeRnD trigger a FlowRunner workflow automatically?

Yes. OfficeRnD supports 1 trigger that can start a FlowRunner workflow automatically.

Start building with OfficeRnD

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