Skip to main content

v3 - CourseRev Integration

Complete guide to CourseRev (AI phone-booking assistant): how it connects via the Golfmanager API, step-by-step API-key setup, every field explained, day-to-day use, technical reference and FAQs.

Contents

ℹ️ Important: CourseRev is not a module inside Golfmanager. It's an external system that connects to Golfmanager through its public API. That's why it isn't "installed": you activate it by generating an API key and giving it to CourseRev.

What is this integration?

CourseRev is a phone booking assistant (voice/AI): it answers players' calls and manages their tee times automatically. The integration consists of CourseRev connecting to Golfmanager via its public API to check real availability and create bookings directly in Golfmanager.

This way, a booking made by phone through CourseRev appears in Golfmanager like any other, in real time and without anyone having to enter it by hand.

What problem does it solve?

  • Handles phone bookings without tying up the front desk, even outside opening hours.

  • Uses Golfmanager's real availability: no double bookings or schedule mismatches.

  • Bookings come in on their own in Golfmanager, with no double entry.

  • Improves the player experience and frees up staff time.

Which systems does it connect, and which way does the data flow?

It connects CourseRev with the Golfmanager API, in real time and both ways:

  • CourseRev asks Golfmanager what tee times are available for a date and a number of players.

  • Golfmanager replies with the free slots and their prices.

  • CourseRev creates the booking (and, if needed, registers or finds the customer) in Golfmanager.

  • Golfmanager confirms the booking, which is recorded like any other.

Golfmanager is always the system of record: the schedule and booking rules are set by Golfmanager; CourseRev only queries and creates through the API.

What information is exchanged?

Information

Direction

Purpose

Date, course/area and number of players

CourseRev → Golfmanager

Check availability

Free tee times and prices

Golfmanager → CourseRev

Offer the times to the player

Player details (name, phone, email)

CourseRev → Golfmanager

Find or register the customer

Booking to create (time, type, players)

CourseRev → Golfmanager

Create the booking

Booking confirmation

Golfmanager → CourseRev

Confirm to the player

Prerequisites (before turning the integration on)

  1. Have CourseRev contracted and the rollout agreed with them.

  2. Have the Bookings module active in Golfmanager, with the courses/areas and booking rules configured.

  3. A Golfmanager API key (generated by an administrator; see below).

  4. The tenant name (your club's identifier in Golfmanager) and the address (URL) of your Golfmanager.

  5. System administrator permissions to generate the API key.

How to set it up (step by step)

Setup consists of generating an API key in Golfmanager, linking it to your club and a user, and handing the details to CourseRev.

Step 1 — Generate the API key

  1. In the Golfmanager admin, go to API V3 > API Keys.

  2. Create a new key.

  3. In Name, give it an identifying name (for example, CourseRev).

  4. Optionally, set the usage limits: Requests per minute and Requests per hour (leave them empty for no limit).

  5. Save. Golfmanager generates a long key automatically. Copy it right then: for security, it's only shown at creation.

Step 2 — Link the key to your club and a user

  1. On the key's record, link it to your tenant (your club).

  2. Set the user whose permissions CourseRev will use when operating (this is what controls what the integration can do: bookings and customers).

  3. Save.

Step 3 — Hand the details to CourseRev

  1. Provide CourseRev with the API key.

  2. Provide the tenant name (your club).

  3. Provide the URL of your Golfmanager.

🔒 Treat the API key like a password: it gives access to your booking and customer data. Share it only with CourseRev over a secure channel and, if it's ever compromised, generate a new one and delete the old one.

Each API-key field explained

Below, each field of the API key is explained (in API V3 > API Keys): what it is, how it affects the system, how it behaves, and an example of use.

Name

  • Field name: Name.

  • Description: an identifying name for the key, to recognize it in the list.

  • System impact: it doesn't affect the connection; it's so you know what each key is for.

  • System behavior: it's required. It appears in the keys list.

  • Example of use / what happens: you set CourseRev; that way, if you later have several integrations, you can tell at a glance which one is CourseRev's and revoke it without touching the others.

API key

  • Field name: the API key (the long code that's generated).

  • Description: the secret code (around 80 characters) that authenticates CourseRev to Golfmanager.

  • System impact: it's the integration's "password". Whoever has it can operate against your Golfmanager with the linked user's permissions.

  • System behavior: it's generated automatically on save and only shown once (at creation). After that it's hidden and can't be viewed again.

  • Example of use / what happens: when you create the key, you copy it and give it to CourseRev. If you lose it, you can't recover it: you'll have to generate a new one.

Requests per minute

  • Field name: Requests per minute.

  • Description: the maximum number of requests the key can make in a minute.

  • System impact: it protects your Golfmanager from excessive use. If exceeded, requests are temporarily rejected with a "limit exceeded" error.

  • System behavior: if you leave it empty (or 0), there's no per-minute limit. If you set a number, usage is counted in one-minute windows.

  • Example of use / what happens: you don't normally need to touch it. If CourseRev tells you a specific limit, you set it here.

Requests per hour

  • Field name: Requests per hour.

  • Description: the maximum number of requests the key can make in an hour.

  • System impact: same as the per-minute limit, but over a one-hour window.

  • System behavior: empty (or 0) = no per-hour limit.

  • Example of use / what happens: you leave it empty unless you want (or CourseRev asks you) to cap the volume of API calls.

Tenant (linked club)

  • Field name: tenant (the key's link to your club).

  • Description: your club's identifier in Golfmanager, that the key points to.

  • System impact: it routes the requests to your club's database. Each CourseRev request states this tenant in a header.

  • System behavior: without the correct tenant, the requests don't know which club to apply to and fail.

  • Example of use / what happens: you link the key to your club and give CourseRev that same tenant name.

User (permissions)

  • Field name: user (the user linked to the key in your club).

  • Description: the Golfmanager user whose permissions apply when CourseRev operates with the key.

  • System impact: it's what controls what CourseRev can do. The integration can only do what that user is allowed to (check availability, create bookings, manage customers).

  • System behavior: if the user is disabled or lacks a permission, that CourseRev action will fail.

  • Example of use / what happens: you link a user with just the bookings and customers permissions needed; that way CourseRev does what it needs, no more and no less.

How it works day to day

Once it's set up, there's nothing to do at the club: the process is automatic.

  1. The player calls by phone and CourseRev answers.

  2. CourseRev checks availability in Golfmanager based on the date and the number of players.

  3. It offers the free times and the player chooses.

  4. CourseRev finds or registers the customer and creates the booking in Golfmanager.

  5. The booking appears in Golfmanager in real time, just like one made by the front desk or the online portal.

Bookings created by CourseRev can be viewed, modified or cancelled in Golfmanager like any other. CourseRev always respects the club's availability and booking rules.

What it uses from the API (technical reference)

This section is for CourseRev's technical team. Requests are authenticated with the key header (the API key) and the tenant header (your club). The main booking endpoints are:

Action

Endpoint

Check tee-time availability

GET /api/bookings/searchAvailability

Create booking(s)

POST /api/bookings/saveGroup

Cancel booking(s)

POST /api/bookings/cancel

Search / create / edit customers

GET / POST /api/model/customer

📖 The complete, up-to-date specification (exact parameters for each endpoint, formats and examples) is in the built-in API documentation: /api/doc, with a test environment at /api/playground. It's the reference source CourseRev's team should follow. (In the playground, the key is cleared after 60 minutes of inactivity for security.)

Limitations to keep in mind

  • It's not a Golfmanager module: it's an external service that connects via API. The quality of the experience also depends on CourseRev.

  • It respects Golfmanager's rules: CourseRev can only book what the club's availability and rules allow; it's worth having them well configured.

  • It depends on the API key: if you delete the key or disable the linked user, CourseRev can no longer book.

  • The key is only shown once: at creation. If you lose it, you have to generate a new one.

  • The key doesn't expire by date: it stays valid until you delete it or the user is disabled. If you suspect it's been leaked, generate a new one.

  • There may be usage limits (requests per minute/hour) if you've configured them on the key.

  • Permissions are set by the assigned user: CourseRev will only do what that user is allowed to.

Frequently asked questions

Is CourseRev a module you install in Golfmanager?

No. CourseRev is an external system that connects to Golfmanager via its public API. Nothing is installed: the integration is activated by generating an API key and giving it to CourseRev.

How is the integration activated?

In three steps: (1) you generate an API key in API V3 > API Keys, (2) you link it to your club and a user, and (3) you give CourseRev the key, the tenant (your club) and the URL of your Golfmanager.

Do I have to program or configure anything else?

No. The technical part (how it calls the API) is done by CourseRev. You only generate the key, link it and hand over the details. The rest is automatic.

Do bookings made by phone appear in Golfmanager?

Yes, in real time and like any other booking (just like those from the front desk or the online portal). You can view, modify and cancel them as normal.

What details does CourseRev need from me?

Three: the API key, the tenant name (your club's identifier) and the URL of your Golfmanager.

What is the "tenant"?

It's your club's identifier in Golfmanager. The API requests state it in a header so they know which club to apply to. It must match the one you linked to the key.

Can the API key be viewed again after creating it?

No. The key is only shown once, at the moment of creation. Copy it and store it securely. If you lose it, you'll have to generate a new one and give it to CourseRev.

I lost the key. What do I do?

Generate a new key in API V3 > API Keys, give it to CourseRev, and delete the old one once the new one is working.

How do I control what CourseRev can do in my Golfmanager?

Through the permissions of the user linked to the key. CourseRev can only do what that user is allowed to (check availability, create bookings, manage customers). Assign it a user with just the right permissions.

Can I limit the number of CourseRev's requests?

Yes. On the key you can set a maximum of requests per minute and per hour. If you leave them empty, there's no limit. You normally don't need to touch them unless CourseRev gives you a value.

CourseRev gets the "Rate Limit Exceeded" error. What does it mean?

It means the request limit you configured on the key (per minute or per hour) has been exceeded. The message states the count, the maximum and the window. Wait a bit or raise/remove the limits on the API key.

CourseRev can't connect or gives an authentication error. What should I check?

Check the three details: the API key, the tenant (your club) and the URL. If unsure, generate a new key and hand it over again. Common messages: "Invalid key" (the key is wrong or empty) and "Tenant is required" (the club identifier is missing).

I get "Tenant is required" or "Invalid key". What's going on?

"Tenant is required" means the request doesn't include your club; check that CourseRev sends the correct tenant. "Invalid key" means the key is wrong or not being sent; check the key or generate a new one.

No availability shows up to book. Why?

Because there are no free slots according to the schedule or the club's rules for that date, area and number of players. Review the booking configuration (hours, rules, course/area) in Golfmanager.

CourseRev books, but can't do something specific. What's happening?

Most likely the user linked to the key doesn't have that permission. Review that user's permissions and add what's needed (or remove them if you don't want CourseRev to do something).

A booking doesn't appear in Golfmanager. What should I check?

Confirm the key points to the correct club (the tenant) and that the creation didn't return an error. CourseRev's team can review the API response to see what happened.

Does the API key expire?

It doesn't expire by a date. It stays valid until you delete it or the linked user is disabled. For security, it's worth rotating it if you suspect it's been leaked.

Can CourseRev bypass the club's booking rules?

No. CourseRev can only book what Golfmanager's availability and rules allow. Golfmanager is always the system of record; that's why it's worth having the booking rules well configured.

Where is the technical API documentation for CourseRev?

In the platform itself: the built-in documentation is at /api/doc and there's a test environment at /api/playground. It's the reference CourseRev's technical team should follow.

What permissions do I need to create the API key?

System administrator permissions. They're what's needed to access API V3 > API Keys and generate and link the key.

How do I revoke CourseRev's access?

By deleting CourseRev's API key (or disabling the linked user). From that moment, CourseRev can no longer query or book.

Does the key give access to all my data?

The key gives access to whatever the linked user allows; that's why it's best to assign it only the necessary permissions. Even so, treat it like a password: share it only with CourseRev over a secure channel.

Can I use the same key for CourseRev and another integration?

It's better to use a dedicated key for CourseRev. That way, if you need to revoke its access, you do it without affecting other integrations.

What happens if Golfmanager or CourseRev is unavailable at some point?

If the Golfmanager API doesn't respond, CourseRev won't be able to query or book during that time; when it's restored, it works again. Likewise, if the CourseRev service fails, calls are handled according to what CourseRev has in place. The Golfmanager schedule always remains the source of truth.

Recommended best practices

  • Use a dedicated API key for CourseRev (don't share it with other integrations), so you can revoke it without affecting anything else.

  • Assign the key a user with just the right permissions that CourseRev needs (bookings and customers), no more and no less.

  • Configure the booking rules well in Golfmanager: they're what CourseRev will respect.

  • Make a test booking when activating the integration and check it appears correctly in Golfmanager.

  • Store the key securely and rotate it if you suspect it's been leaked.

Did this answer your question?