schema

The OLP CLI supports the following:

schema list

Lists all schemas you can access.

olp schema list [filter] [command options]

Optional parameters:

  • [filter] Freeform text used to filter the schema list. The filter checks if the schema's HRN, name or summary contains the filter string. If the filter string contains an HRN without a realm, OLP CLI will also return schemas that contain the realm in HRN.
  • --limit <max number of schemas> Specifies the maximum number of schemas returned, the default value is 10000.
  • --type <proto|json> Specifies the type of schemas returned. If omitted, all types are returned.
  • --credentials <path to credentials file> The name of a credentials file to use with the command. Credentials files are downloaded separately from the platform portal.
  • --profile <profile name> The name of the credentials profile to use from the olpcli.ini file.
  • --json Displays the command result in JSON format.
  • --quiet Displays the schema HRNs, each on a new line.
  • --scope <project HRN> Specifies the project HRN to use as the scope in the request. The value specified with --scope overrides any value for here.token.scope provided in the credentials file used for the command.

Example:

olp schema list "RIB 1.25.0 Topology" --json

Output:

The example below lists all the schemas to which you have access with the term RIB 1.25.0 Topology in the name or the summary field.


{"schemas": [{
    "summary": "Topology provides the representation of a topology network.",
    "hrn": "hrn:here:schema::realm:com.here.schema.rib:topology_v1:1.25.0",
    "created": "2018-04-19T05:11:09.523Z",
    "groupId": "com.here.schema.rib",
    "name": "RIB 1.25.0 Topology",
    "artifactId": "topology_v1",
    "updated": "2018-04-19T05:11:54.225Z",
    "version": "1.25.0"
}]}

schema show

Shows the details of the specified schema.

olp schema show <schema HRN> [command options]

Required parameters:

  • <schema HRN> The HRN of the schema.

Optional parameters:

  • --credentials <path to credentials file> The name of a credentials file to use with the command. Credentials files are downloaded separately from the platform portal.
  • --profile <profile name> The name of the credentials profile to use from the olpcli.ini file.
  • --json Displays the command result in JSON format.
  • --quiet Displays the schema name.
  • --scope <project HRN> Specifies the project HRN to use as the scope in the request. The value specified with --scope overrides any value for here.token.scope provided in the credentials file used for the command.

For more information on using credentials and profiles, see Credentials setup.

Example:

The command below displays the details of the Sensor Data Ingestion Interface (SDII) schema in the JSON format.


olp schema show hrn:here:schema::realm:com.here.sdii:sdii_common_v3:3.3.8 --json

Output:


{
    "summary": "SDII schemas made available through HERE platform are Open Standard Schema specifications.
    Sensor Data Ingestion Interface (SDII) is a vehicle based, sensor data format for the
    transmission of data between a vehicle and the Cloud. This data format consists of events (for example,
    vehicle position, sign recognition, object detection) where an event might be built from one or
    more attributes (for example, lat/lon and altitude of a vehicle). All events include a time stamp based
    on the actual event time. Each position of a vehicle is also provided with a timestamp. Events
    can be related to positions by corresponding event and position time stamps.\nSDII Schema,
    Common: contains definitions of events and attributes of a message. SDII Schema, Message: is a
    container as a delivery package which consists of SDII Schema, Common. SDII Schema, Message
    List: is a container for multiple individual SDII Schema, Messages enabling you to send
    multiple messages within a single Protobuf container thereby optimizing your data
    transmission.",
    "schemaValidationResults": [{
        "fileExtension": true,
        "module": "proto",
        "packageConsistency": false,
        "backwardsCompatibility": true,
        "googleStyle": false,
        "majorVersionInPackage": true
    }],
    "hrn": "hrn:here:schema::realm:com.here.sdii:sdii_common_v3:3.3.8",
    "created": "2019-04-11T18:57:04.828Z",
    "groupId": "com.here.sdii",
    "name": "SDII v3 Schema, Common",
    "artifactId": "sdii_common_v3",
    "type": "proto",
    "updated": "2019-05-06T11:26:17.734Z",
    "version": "3.3.8",
    "variants": [{
        "id": "doc",
        "url": "https://openlocation.here.com/file/2136/download?token=7ZxUMafg"
    }],
    "artifacts": [
        {
            "hrn": "hrn:here:artifact::olp-here:com.here.sdii:sdii_common_v3_java:3.3.8",
            "created": "2019-04-11T18:57:22.204Z",
            "groupId": "com.here.sdii",
            "artifactId": "sdii_common_v3_java",
            "version": "3.3.8",
            "updated": "2019-04-11T18:57:22.204Z"
        },
        {
            "hrn": "hrn:here:artifact::olp-here:com.here.sdii:sdii_common_v3_proto:3.3.8",
            "created": "2019-04-11T18:57:10.456Z",
            "groupId": "com.here.sdii",
            "artifactId": "sdii_common_v3_proto",
            "version": "3.3.8",
            "updated": "2019-04-11T18:57:10.456Z"
        },
        {
            "hrn": "hrn:here:artifact::olp-here:com.here.sdii:sdii_common_v3_scala:3.3.8",
            "created": "2019-04-11T18:58:16.060Z",
            "groupId": "com.here.sdii",
            "artifactId": "sdii_common_v3_scala",
            "version": "3.3.8",
            "updated": "2019-04-11T18:58:16.060Z"
        }
    ]
}

schema delete

Deletes a schema by the schema HRN.

olp schema delete <schema HRN> [command options]

Required parameters:

  • <schema HRN> The HRN of the schema. HRN may be used without a version

Optional parameters:

  • --force Forces the schema to be deleted even if it is linked to a project or forces deletion of all existing versions if no version is specified in HRN
  • --credentials <path to credentials file> The name of a credentials file to use with the command. Credentials files are downloaded separately from the platform portal.
  • --profile <profile name> The name of the credentials profile to use from the olpcli.ini file.
  • --quiet Displays empty output with no additional information.
  • --scope <project HRN> Specifies the project HRN to use as the scope in the request. The value specified with --scope overrides any value for here.token.scope provided in the credentials file used for the command.

Note: Marked Ready for Marketplace

Schemas associated with a catalog marked Ready for Marketplace cannot be deleted.

Example:

The command below deletes a schema with the hrn:here:schema::realm:com.here.example:test_schema_v1:1.0.0 HRN from the platform.


olp schema delete hrn:here:schema::realm:com.here.example:test_schema_v1:1.0.0

Note that the hrn:here:schema::realm:com.here.example:test_schema_v1:1.0.0 schema HRN in the example above serves as a placeholder where you should pass the HRN of your own schema.

schema get

Downloads the specified schema package.

olp schema get <schema HRN> [command options]

Required parameters:

  • <schema HRN> The HRN of the schema.

Optional parameters:

  • --output <path to dir> The output directory to store the downloaded schema ZIP package. If not specified, the current directory is used by default.
  • --credentials <path to credentials file> The name of a credentials file to use with the command. Credentials files are downloaded separately from the platform portal.
  • --profile <profile name> The name of the credentials profile to use from the olpcli.ini file.
  • --json Displays the command result in JSON format.
  • --quiet Displays the absolute path to the downloaded schema package.
  • --scope <project HRN> Specifies the project HRN to use as the scope in the request. The value specified with --scope overrides any value for here.token.scope provided in the credentials file used for the command.

For more information on using credentials and profiles, see Credentials setup.

Example:

The command below downloads the schema package with the hrn:here:schema::realm:com.here.example:test_schema_v1:1.0.0 HRN from the platform.


olp schema get hrn:here:schema::realm:com.here.example:test_schema_v1:1.0.0

Note that the hrn:here:schema::realm:com.here.example:test_schema_v1:1.0.0 schema HRN in the example above serves as a placeholder where you should pass the HRN of your own schema.

schema permission list

List the permissions of users, apps, and groups across all organizations associated with a schema.

olp schema permission list <schema HRN> [command options]

Required parameters:

  • <schema HRN> The HRN of the schema.

Optional parameters:

  • --type <app|group|user> Specifies the type of entity to list.
  • --limit <max number of entities> Specifies the maximum number of entities to be returned in the result (100 by default).
  • --credentials <path to credentials file> The name of a credentials file to use with the command. Credentials files are downloaded separately from the platform portal.
  • --profile <profile name> The name of the credentials profile to use from the olpcli.ini file.
  • --json Displays the command result in JSON format.
  • --quiet Displays the entities' HRNs, each on a new line.

For more information on using credentials and profiles, see Credentials setup.

Example:

Linux
Windows
olp schema permission list hrn:here:schema::realm:com.here.example:test_schema_v1:* \
--json
olp catalog permission list hrn:here:schema::realm:com.here.example:test_schema_v1:* ^
--json

Output:


{"entityGrants": [
{
"entityId": {
"id": "HERE-05966c89-aaf1-4ae2-b0e4-3676b3f8b8c3",
"hrn": "hrn:here:account::myrealm:user/HERE-05966c89-aaf1-4ae2-b0e4-3676b3f8b8c3",
"realmHrn": "hrn:here:account::myrealm:realm/myrealm",
"type": "user"
},
"permissions": [
{
"id": "PERM-7heTYzsR05VR_p3IeyaZKDdlVPb1zJJUmzLI9JUEDcc",
"action": "read",
"effect": "allow",
"resource": "hrn:here:schema::realm:com.here.example:test_schema_v1:1.0.0",
"serviceId": "SERVICE-b9acbead-4666-487e-88b0-cfb64ed0ac6a"
},
{
"id": "PERM-7heTYzsR0RV5_p3IeyaZKDdlVPb1zJJUmzLI9JUDEbb",
"action": "write",
"effect": "allow",
"resource": "hrn:here:schema::realm:com.here.example:test_schema_v1:1.0.0",
"serviceId": "SERVICE-b9acbead-4666-487e-88b0-cfb64ed0ac6a"
}
]
},
{
"entityId": {
"id": "my-app-1234",
"hrn": "hrn:here:account::myrealm2:app/my-app-1234",
"realmHrn": "hrn:here:account::myrealm2:realm/myrealm2",
"type": "app"
},
"permissions": [
{
"id": "PERM-7heTYzsR05VR_p3IeyaZKDdlVPb1zJJUmzKJ9JUECdd",
"action": "manage",
"effect": "allow",
"resource": "hrn:here:schema::realm:com.here.example:test_schema_v1:1.0.0",
"serviceId": "SERVICE-b9acbead-4666-487e-88b0-cfb64ed0ac6a"
}
]
}
]
}

schema permission grant

Note

The following command is only applicable to schemas created outside of a project.

Grants permission to perform selected actions on a schema.

olp schema permission grant <schema HRN> [command options]

Required parameters:

  • <schema HRN> The HRN of the schema.
  • Either of the following recipients:
    • --group <groupID1 groupID2 ...> The list of group IDs you want to grant schema access to, separated by space.
    • --user <userID1 userID2 ...> The list of user IDs you want to grant schema access to, separated by space. This information can be found in the .here/credentials.properties file, in the user's home directory, or via your profile.
    • --app <appID1 appID2 ...> The list of application IDs you want to grant schema access to, separated by space.
  • Either of the following permissions:
    • --read Grants read access to a schema.
    • --modify Grants modify access to a schema.
    • --share Grants share access to a schema.

Note

You must specify at least one --read, --modify, or --share parameter for a corresponding --group, --user, or --app.

Optional parameters:

  • --credentials <path to credentials file> The name of a credentials file to use with the command. Credentials files are downloaded separately from the platform portal.
  • --profile <profile name> The name of the credentials profile to use from the olpcli.ini file.
  • --quiet Displays empty output with no additional information.

For more information on using credentials and profiles, see Credentials setup.

Example:

Linux
Windows
olp schema permission grant hrn:here:schema::realm:com.here.example:test_schema_v1:1.0.0 \
   --group GROUP-example-group-id --read --modify
olp schema permission grant hrn:here:schema::realm:com.here.example:test_schema_v1:1.0.0 ^
   --group GROUP-example-group-id --read --modify

Note that the hrn:here:schema::realm:com.here.example:test_schema_v1:1.0.0 schema HRN in the example above serves as a placeholder where you should pass the HRN of your own schema.

schema permission revoke

Note

The following command is only applicable to schemas created outside of a project.

Revokes permissions to perform all actions on a schema.

olp schema permission revoke <schema HRN> [command options]

Required parameters:

  • <schema HRN> The HRN of the schema.
  • Either of the following recipients:
    • --app <appID1 appID2 ...> The list of application IDs you want to revoke schema access from, separated by space.
    • --user <userID1 userID2 ...> The list of user IDs you want to revoke schema access from, separated by space. This information can be found in the .here/credentials.properties file, in the user's home directory, or via your profile.
    • --group <groupID1 groupID2 ...> The list of group IDs you want to revoke schema access from, separated by space.
  • Either of the following permissions:
    • --read Revokes read access to a schema.
    • --modify Revokes modify access to a schema.
    • --share Revokes share access to a schema.

Note

You must specify at least one --read, --modify, or --share parameter for a corresponding --group, --user, or --app.

Optional parameters:

  • --credentials <path to credentials file> The name of a credentials file to use with the command. Credentials files are downloaded separately from the platform portal.
  • --profile <profile name> The name of the credentials profile to use from the olpcli.ini file.
  • --quiet Displays empty output with no additional information.

For more information on using credentials and profiles, see Credentials setup.

Example:

Linux
Windows
olp schema permission revoke hrn:here:schema::realm:com.here.example:test_schema_v1:1.0.0 \
   --group GROUP-example-group-id --read --modify --share
olp schema permission revoke hrn:here:schema::realm:com.here.example:test_schema_v1:1.0.0 ^
   --group GROUP-example-group-id --read --modify --share

Response:


Revoked read, modify, share access for a group GROUP-example-group-id to the schema hrn:here:schema::realm:com.here.example:test_schema_v1:1.0.0

Note that the hrn:here:schema::realm:com.here.example:test_schema_v1:1.0.0 schema HRN in the example above serves as a placeholder where you should pass the HRN of your own schema.

schema generate

Generates a new schema for the Maven project.

olp schema generate <group ID> <artifact ID> [command parameters]

Required parameters:

  • <group ID> The group ID for the schema.
  • <artifact ID> The artifact ID of the root artifact.

Optional parameters:

  • --archetype-version <archetype version> The version of the schema archetype to be used to generate the schema. The latest version is set by default.
  • --description <schema description> Summary description of the schema. Value from the artifact is set by default.
  • --documentation <URL|path to documentation file> The URL to the documentation or path to a Markdown file.
  • --layer-schema <true|false> Set this to false if the schema is meant only for use as a component of other schemas. The default value is true.
  • --major-version <major version> The major version to be used as a suffix for the artifact ID of the schema. If not provided, version 1 is used.
  • --mvn-options <Maven options> Maven options provided as a string. No Maven options are provided by default.
  • --mvn-output The parameter showing whether the redirect of the output from Maven to the console is set up. The default value is false.
  • --name <schema name> The name of the schema. The value from the archetype is set by default.
  • --output <path to output directory> The path to the store with the generated schema source code. The current directory is used by default.
  • --source <path to directory or file> The path to the folder or file with the schema message.
  • --type <proto|json> Specifies the type of schema to generate. The default value is json.
  • --version <version> Specifies the version of schema to generate. The default value is 1.0.0.
  • --credentials <path to credentials file> The name of a credentials file to use. with the command. Credentials files are downloaded separately from the platform portal.
  • --profile <profile name> The name of the credentials profile to use from the olpcli.ini file.
  • --quiet Displays the folder where the schema was generated.

For more information on using credentials and profiles, see Credentials setup.

Example:

The command below generates a schema with the com.here.test group and the test_schema artifact ID.


olp schema generate com.here.test test_schema

Output:


Schema has been successfully generated in /home/user/test_schema.

schema package

Validate and builds a generated schema project.

olp schema package [command parameters]

Optional parameters:

  • --input <path to input directory> The path to the storage of the generated schema source code. The current directory is used by default.
  • --mvn-options <Maven options> Maven options provided as a string. No Maven options are provided by default.
  • --mvn-output The parameter showing whether the redirect of the output from Maven to the console is set up. The default value is false.
  • --credentials <path to credentials file> The name of a credentials file to use. with the command. Credentials files are downloaded separately from the platform portal.
  • --profile <profile name> The name of the credentials profile to use from the olpcli.ini file.
  • --quiet Displays empty output with no additional information.

For more information on using credentials and profiles, see Credentials setup.

Example:

The command below build generated schema project located in the ~/Desktop/test_schema/ folder.


olp schema package --input `~/Desktop/test_schema/`

Output:


Schema has been packaged successfully.

schema put

Validate and uploads a schema to the platform.

olp schema put [command parameters]

Optional parameters:

  • --input <path to schema directory> The directory of the generated schema. If this parameter is not used, the default directory is set as the current directory.
  • --mvn-options <Maven options> Maven options provided as a string. No Maven options are provided by default.
  • --mvn-output The parameter showing whether the redirect of the output from Maven to the console is set up. The default value is false.
  • --credentials <path to credentials file> The name of a credentials file to use. with the command. Credentials files are downloaded separately from the platform portal.
  • --profile <profile name> The name of the credentials profile to use from the olpcli.ini file.
  • --quiet Displays the folder where the schema was generated.
  • --scope <project HRN> Specifies the project HRN to use as the scope in the request. The value specified with --scope overrides any value for here.token.scope provided in the credentials file used for the command.

For more information on using credentials and profiles, see Credentials setup.

Example:

The command below uploads the schema generated in directory /home/user/test_schema.


olp schema put --input=/home/user/test_schema

Output:


Schema hrn:here:schema::realm:com.here.test:test_schema_v1:1.0.0 has been created.
For more information, use the 'olp schema show' command.

results matching ""

    No results matching ""