Skip to main content

Endpoint Overrides

SDK for Android

Alter the endpoints used by the Mobile App unlock function. The endpoint paths are found in \mobileappunlock\src\main\java\com\hypr\mobileappunlock\MainActivity.kt under changeRelyingPartyEndpoints.

NOT AN OPTION

This method must be performed before any HYPR operation is executed.

To modify HYPR server endpoints, the following methods can be executed to set new/path/to to the new server endpoints. You can override only the endpoints described in the following example.

Example

private fun changeRelyingPartyEndpoints() {
val hyprApiEndpoints = hyprWrapper.getCurAppProfile(this).hyprApiEndpoints
hyprApiEndpoints.setOobVersionedRegReqEndpoint("https://website/new/path/to/rp/fido/get");
// Fido Registration Response
hyprApiEndpoints.setOobVersionedRegRespEndpoint("https://website/new/path/to/rp/fido/send/reg");
// Fido Authentication Request
hyprApiEndpoints.setOobVersionedAuthReqEndpoint("https://website/new/path/to/rp/fido/get");
// Fido Authentication Response
hyprApiEndpoints.setOobVersionedAuthRespEndpoint("https://website/new/path/to/rp/fido/send/auth");
// Fido Deregistration
hyprApiEndpoints.setOobVersionedDeregEndpoint("https://website/new/path/to/rp/fido/get");

// OOB Device Setup
hyprApiEndpoints.setOobVersionedDeviceSetupEndpoint("https://website/new/path/to/rp/versioned/device/setup");
// OOB Device Registrations
hyprApiEndpoints.setOobVersionedDeviceRegisterEndpoint("https://website/new/path/to/rp/versioned/device/registrations");

// Workstation Unlock
hyprApiEndpoints.setOobVersionedDeviceWsAuthorizeUnlockEndpoint("https://website/new/path/to/rp/versioned/device/authorize/ws/unlock");
// Workstation Unlock Complete - trailing slash is needed only here
hyprApiEndpoints.setOobVersionedDeviceWsAuthorizeCompleteEndpoint("https://website/new/path/to/rp/versioned/device/authorize/ws/complete/");
// Workstation Cancel
hyprApiEndpoints.setOobVersionedDeviceWsAuthorizeCancelEndpoint("https://website/new/path/to/rp/versioned/device/authorize/ws/cancel");
// Workstation Deregister
hyprApiEndpoints.setOobVersionedDeviceWsDeregisterEndpoint("https://website/new/path/to/rp/versioned/device/ws/deregister");
// Workstation Status
hyprApiEndpoints.setOobVersionedDeviceWsStatusEndpoint("https://website/new/path/to/rp/versioned/device/query/ws/status");

// Website Delete
hyprApiEndpoints.setOobVersionedDeviceBrowserDeregisterEndpoint("https://website/new/path/to/rp/versioned/device/deregister");

// Audit
hyprApiEndpoints.setVersionedAuditEndpoint("https://website/new/path/to/rp/versioned/audit");
}

SDK for iOS

Redirecting Relying Party Network Requests

This feature allows developers to override different endpoints to be sent to the HYPR Server for registration, authentication, and deregistration. Overriding specific endpoints will make it so your custom endpoints are used instead of the defaults during registration, authentication, and deregistration.

It is not necessary to provide a value for every property in HYPRRPAPIEndpoints. If a value is not provided, the default endpoint will be used.

Not an Option

When overriding the API endpoints, it assumes that a HYPRUserAgentProfile profile is already registered.

Supported Endpoints

You can override only the following endpoints:

ParameterDescriptionExample
initWithRegFidoGetregistration initialization endpointhttps://example.com/customRegFidoGet
regFidoSendregistration endpointhttps://example.com/customRegFidoSend
authFidoGetauthentication endpointhttps://example.com/customAuthFidoGet
authFidoSendauthentication endpointhttps://example.com/customAuthFidoSend
deregFidoGetderegistration endpointhttps://example.com/customDeregFidoGet

Implementation

  1. Create a HYPRRPAPIEndpoints object and provide the URL endpoints in the initializer.

  2. Set the HYPRRPAPIEndpoints object to the HYPRUserAgent relyingPartyAPIEndpoints property. This will store the new endpoints in the current active profile and will be persisted within that profile.

Example

// Create the profile with the profile configuration
HYPRUserAgentProfile *profile = [[HYPRUserAgentProfile alloc] initWithDisplayName:@"<Your profile name goes here>" configuration: profileConfig persona: nil userAccounts: nil];
[[HYPRUserAgent sharedInstance] registerProfile: profile];

// Set the new HYPRRPAPIEndpoints for the current active profile
HYPRUserAgent *userAgent = HYPRUserAgent.sharedInstance;
userAgent.relyingPartyAPIEndpoints = [[HYPRRPAPIEndpoints alloc] initWithRegFidoGet:@"https://example.com/customRegFidoGet"
regFidoSend:@"https://example.com/customRegFidoSend"
authFidoGet:@"https://example.com/customAuthFidoGet"
authFidoSend:@"https://example.com/customAuthFidoSend"
deregFidoGet:@"https://example.com/customDeregFidoGet"];