Third Party Integrations

SeatGeek Integration

Rover includes support for integrating with the SeatGeek CRM and Client ID. This will allow your team to use SeatGeek identity information in the Rover platform.

The integration is indirect; you provide the SeatGeek CRM and Client ID and integrate the Rover SDK into your app, and write a little bit of glue code.

SeatGeek CRM ID

When using the SeatGeek Enterprise SDK, it is important to enable CRM ID creation, as the CRM ID is required for the integration to work.

SDK Authentication

To enable additional data access for personalization use cases, you will also need to enable SDK Authentication. This is necessary to ensure that the specified SeatGeek CRM and Client IDs are attested to by your app's backend and can be trusted, and have not been spoofed by a hostile actor.


Installing the Module

iOS

Add the "RoverSeatGeek" package product module to your app using SwiftPM (review the Install page for details).

When initilizing the Rover SDK, add the import for RoverSeatGeek then add SeatGeekAssembler to the list of assemblers:

...
import RoverSeatGeek
...

Rover.initialize(assemblers: [
  ...
  SeatGeekAssembler(),
  ...
])

Next, provide the Rover SDK with a SeatGeek Client ID and a CRM ID:

Rover.shared.seatGeekAuthorizer.setSeatGeekIDs(
    clientID: clientID,
    crmID: crmID
)

Replace the Deprecated CRM ID-Only Call

If you integrated SeatGeek before SDK 4.14.0, your sign-in code calls the CRM ID-only method, which is now deprecated:

Rover.shared.seatGeekAuthorizer.setSeatGeekID(crmID)

Replace it with setSeatGeekIDs() above and supply your SeatGeek Client ID alongside the CRM ID. Both IDs are required.

Do not leave the deprecated call in place: it reports no Client ID at all, and calling it after setSeatGeekIDs() clears the Client ID that was already set.

The Client ID and CRM ID may be cleared, as appropriate, with the following code:

Rover.shared.seatGeekAuthorizer.clearCredentials()

Android

Add the Rover SeatGeek module to your Gradle dependencies:

implementation "io.rover.sdk:seatgeek:4.x.x"

Latest SDK Version

Use the same SDK version for all Rover modules and find available versions on the GitHub releases page.

When initilizing the Rover SDK, add the import for the SeatGeekAssembler then add it to the list of assemblers:

...
import io.rover.sdk.seatgeek.SeatGeekAssembler
...

Rover.initialize(
    ...,
    SeatGeekAssembler(),
    ...
)

Next, provide the Rover SDK with a SeatGeek Client ID and a CRM ID. This can be done when the user signs in with SeatGeek or links an existing account and on app launch if the user is already signed in.

Rover.shared.seatGeekAuthorizer.setSeatGeekIDs(
    clientID = clientID,
    crmID = crmID
)

Replace the Deprecated CRM ID-Only Call

If you integrated SeatGeek before SDK 4.14.0, your sign-in code calls the CRM ID-only method, which is now deprecated:

Rover.shared.seatGeekAuthorizer.setSeatGeekId(crmID)

Replace it with setSeatGeekIDs() above and supply your SeatGeek Client ID alongside the CRM ID. Both IDs are required.

Do not leave the deprecated call in place: it reports no Client ID at all, and calling it after setSeatGeekIDs() clears the Client ID that was already set. The SDK logs a warning when the deprecated method is called, so you can check Logcat to confirm nothing in your app still uses it.

The Client ID and CRM ID may be cleared, as appropriate. Logging out of the SeatGeek account is a good time to do this.

Rover.shared.seatGeekAuthorizer.clearCredentials()
Previous
AXS