This set of endpoints are used for serving information about a project to the public. By default, project information, including user authentication methods, is kept private. However, some projects may opt to make such information public by enabling their "public profiles". Authorization header is not required for a client to access these resources.

Endpoints

The Project Public Profile object

  • idinteger

    Unique project ID.

  • publicAliasstring

    Lookup key associated with project's public profile.

  • namestring

    Display name of project.

  • descriptionstring

    A short description of the project.

  • userAccountModestring| options are phone, email, byou

    Determines how the user account system should operate.

  • localestring

    Default locale that can be used by project's frontend apps.

  • onDemandProvisioningboolean

    True if devices are provisioned on demand by users.

  • restrictUserRegboolean

    True to turn off open user registration.

  • enableDeviceLogRetrievalboolean

    True to enable device log retrieval.

  • userPasswordPolicyobject

    Password policy for project's users. Applicable only if userAccountMode is 'email'.

The Authentication Method object

  • idstring

    Identifier assigned to the method.

  • labelstring

    String to be displayed on UI to represent this method.

  • descriptionstring

    Additional info about this method.

  • iconUrlstring

    URL to an icon image to represent this method on UI.

  • protocolstring| options are oidc

    The protocol to be used with this method.

  • configobject

    Configuration key-value pairs, whose specific structure depends on the protocol of this method. This field is only present to authorized administrators.

Get project public profile

Endpoint
get /projectProfiles/{publicAlias}
Description

Get the publicly available information about a project. This includes information that is needed for a frontend application to carry out the user sign-in or sign-up process.

Path Parameters
  • publicAlias

    string

    required

    A unique identifier to look up a profile's public profile.

Response
  • 200Project's public profile is returned.
  • 401Authorization is required to access this resource.
  • 403Request failed because of denied permission.
  • 404The requested projectProfile does not exist or is not accessible.
  • 500An unexpected error has occurred.
  • 503The service is temporarily unavailable.

List alternative user authentication methods

Endpoint
get /projectProfiles/{publicAlias}/userAuthMethods
Description

Get a list of user authentication methods supported by a project. These are alternative authentication methods, in additiona to the project's default method, such as sign-in by email/password.

Path Parameters
  • publicAlias

    string

    required

    A unique identifier to look up a profile's public profile.

Response
  • 200Authentication methods are returned.
  • 401Authorization is required to access this resource.
  • 403Request failed because of denied permission.
  • 500An unexpected error has occurred.
  • 503The service is temporarily unavailable.

Get a user authentication method

Endpoint
get /projectProfiles/{publicAlias}/userAuthMethods/{methodId}
Description

Get the specified alternative user authentication method.

Path Parameters
  • publicAlias

    string

    required

    A unique identifier to look up a profile's public profile.

  • methodId

    string

    required

    Identifier of authentication method

Response
  • 200Authentication method is returned.
  • 401Authorization is required to access this resource.
  • 403Request failed because of denied permission.
  • 404The requested userAuthMethod does not exist or is not accessible.
  • 500An unexpected error has occurred.
  • 503The service is temporarily unavailable.

Get configuration of an app

Endpoint
get /projectProfiles/{publicAlias}/apps/{appId}/config
Description

Frontend applications can call this to fetch any configuration data they may need in order to launch. The actual structure of the returned JSON object is entirely determined by the App.

Path Parameters
  • publicAlias

    string

    required

    A unique identifier to look up a profile's public profile.

  • appId

    string

    required

Response
  • 200The App configuration object is returned.
  • 401Authorization is required to access this resource.
  • 403Request failed because of denied permission.
  • 404The requested config does not exist or is not accessible.
  • 500An unexpected error has occurred.
  • 503The service is temporarily unavailable.