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
.
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.
When overriding the API endpoints, it assumes that a HYPRUserAgentProfile
profile is already registered.
Supported Endpoints
You can override only the following endpoints:
Parameter | Description | Example |
---|---|---|
initWithRegFidoGet | registration initialization endpoint | https://example.com/customRegFidoGet |
regFidoSend | registration endpoint | https://example.com/customRegFidoSend |
authFidoGet | authentication endpoint | https://example.com/customAuthFidoGet |
authFidoSend | authentication endpoint | https://example.com/customAuthFidoSend |
deregFidoGet | deregistration endpoint | https://example.com/customDeregFidoGet |
Implementation
-
Create a
HYPRRPAPIEndpoints
object and provide the URL endpoints in the initializer. -
Set the
HYPRRPAPIEndpoints
object to theHYPRUserAgent
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"];