2.1.2 Generating an authenticated one-time login link to the Go1 Catalogue

Why use a 1-time login link?

A 1-time login link enables you to control access to the Go1 Catalogue from within your application, giving you the flexibility to generate access on demand and without having to store multiple authentication tokens.

Each 1-time link used to generate a login is based on a given access token - whomever the token belongs to will be who the Go1 catalogue is authenticated as.

  • Typically, it is easiest to create a user within your Customer portals that you can use to provision these portals (e.g., when creating a Customer portal, also create a support user as a backdoor/general access user - e.g., support@yourLMS.com). Then, you can reliably use this single user as the basis for the single login across all of your Customer portals.
  • If you need to manage user-level login access, this can be done using this request.

How do I generate the link and display the Go1 Catalogue?

Step 1. Generate the 1-time login link

The iframe can be provisioned by requesting the Go1 API for a login for a single user.

When specifying the redirect_url ensure that this redirects back to the page within your application that the iframe will display on.

Additionally, you can customize what is displayed within the Go1 Catalogue by appending this redirect URL with configuration options for the content selector. View {{link}} for more information.

https://api.go1.com/v2/me/login?redirect_url=/r/app/content-selector?embedded=true

This will return a 1-time link that you will then use to generate the iframe within your application.

Step 2. Embed the Go1 Catalogue within an Iframe

Once you have your 1-time login link, you need to place that link as the source for the content of the iframe which will display the Go1 Catalogue to the user within your application.

<iframe width="100%" height="900px" src="https://customersGo1Portal.mygo1.com/r/app/content-selector?oneTimeToken={{token}}" id="iFrame" style="border: none;"></iframe>

Recommended dimensions:

  • Desktop: width="100%" height="900px" (>1100px width, >700 height is preferred)
  • Tablet: aim for a reasonable display on iPad (w=768, h=1024)
  • Mobile: Specific to your application. Some partners choose to support the experience on tablet/desktop only.