Get Your Credentials

All users of the HERE platform must obtain authentication and authorization credentials.

The following approaches are available for authenticating your application with the HERE platform:

  1. using the platform credentials available from the platform portal in combination with the Data Client Base Library credential management system (recommended for development)
  2. using encrypted platform credentials and programmatically providing these credentials to the Data Client Base Library credential management system
  3. using the access key ID and access key secret in the platform credentials and the Authentication and Authorization Developer's Guide to create your own authentication and authorization client for retrieving HERE tokens, which you can then provide to the Data Client Base Library credential management system

To obtain your platform credentials, create a new application via the https://platform.here.com/profile/apps-and-keys page. When you have created your application, click Create A Key to download these credentials.

If you are using option #1 above, place the credentials in $HOME/.here/credentials.properties.

Note: Downloading the Data Client Base Library

To download the Data Client Base Library, you need repository credentials. To obtain your credentials, go to https://platform.here.com/profile/repository and click Create credentials to download the settings.xml file.

Credential Options

The snippets below demonstrate different ways of supplying your platform credentials to the Data Client Base Library.

When you initialize a new service client without supplying any credentials as arguments, the Data Client Base Library attempts to find your platform credentials using the default credential provider chain: a platform credentials file in the JVM classpath, the default location platform credentials download location ($HOME/.here/credentials.properties) and the Java system properties in that order.

Note: Billing Tags

The snippets below also demonstrate the use of HERE platform billing tags, which you can use in requests to the HERE platform in order to later associate your requests with the invoicing for those requests.

Set Your Credentials via the Application's Configuration File

This is the recommended approach.

Based on the values in the platform credentials, include the following parameters in your application.conf file:

HERE Account
com.here.platform.data.client.request-signer {
  billing-tag = "example_billing_tag"
  credentials {
    here-account {
      here-token-endpoint-url = "https://account.api.here.com/oauth2/token"
      here-client-id = "example-client-id"
      here-access-key-id = "example-access-key-id"
      here-access-key-secret = "example-access-key-secret"
    }
  }
}

HERE Token
com.here.platform.data.client.request-signer {
  billing-tag = "example_billing_tag"
  credentials {
    here-token = "example-token"
  }
}

Set Your Credentials in the Credentials File

The Data Client Base Library can read HERE access key and access secret data from the credentials.properties file.

  • The client looks for a credentials.properties file in the Java Virtual Machine (JVM) classpath.

  • A fallback location to find platform credentials is in $HOME/.here/credentials.properties

  • Alternatively, you can specify an alternate credentials file location in the application.conf file.

  com.here.platform.data.client.request-signer {
    billing-tag = "example_billing_tag"
    credentials {
     file-path = "/path/credentials.properties"
    }
  }

Example of credentials properties file:

  here.user.id = example-here-user-id
  here.client.id=example-client-id
  here.access.key.id=example-access-key-id
  here.access.key.secret=example-access-key-secret
  here.token.endpoint.url=https://account.api.here.com/oauth2/token

Set Your Credentials via Java System Properties

To set your credentials via Java System Properties, define the following:

HERE Account
-Dcom.here.platform.data.client.request-signer.credentials.here-account.here-token-endpoint-url="https://account.api.here.com/oauth2/token"
-Dcom.here.platform.data.client.request-signer.credentials.here-account.here-client-id="example-client-id"
-Dcom.here.platform.data.client.request-signer.credentials.here-account.here-access-key-id="example-access-key-id"
-Dcom.here.platform.data.client.request-signer.credentials.here-account.here-access-key-secret="example-access-key-secret"

HERE Token
-Dcom.here.platform.data.client.request-signer.credentials.here-token="example-token"

Set Your Credentials Programmatically

To set your HERE account programmatically, include the following in your project:

Scala
Java
val someCredentials = Some(
  HereAccountCredentials(
    "some-client-id",
    "some-access-key-id",
    "some-access-key-secret",
    "some-token-endpoint-url"
  ))
val client = BaseClient(ConfigFactory.load(), credentials = someCredentials)
HereAccountCredentials someCredentials =
    new HereAccountCredentials.Builder()
        .withHereClientId("some-client-id")
        .withHereAccessKeyId("some-access-key-id")
        .withHereAccessKeySecret("some-access-key-secret")
        .withHereTokenEndpointUrl("some-token-endpoint-url")
        .build();
BaseClient client = new BaseClientJava.Builder().withCredentials(someCredentials).build();

To set your HERE token programmatically, include the following in your project:

Scala
Java
val someCredentials = Some(HereTokenCredentials("some-access-token"))
val client = BaseClient(ConfigFactory.load(), credentials = someCredentials)
HereTokenCredentials someCredentials =
    new HereTokenCredentials.Builder().withHereToken("some-access-token").build();
BaseClient client = new BaseClientJava.Builder().withCredentials(someCredentials).build();

results matching ""

    No results matching ""