Getting Started Concepts The Things Stack Cloud The Things Stack Enterprise Integrations API Hardware
Get The Things Stack

API

    Overview
  • Concepts
  • Reference
    • HTTP(REST)
    • gRPC
      • Application APIs
      • Application Package APIs
      • Application Pub/Sub APIs
      • Application Server APIs
      • Application Webhook APIs
      • Client APIs
      • Crypto Operations APIs
      • End Device APIs
      • Events API
      • Gateway APIs
      • Gateway Server APIs
      • Identity Server APIs
      • Join Server APIs
      • Network Operations Center APIs
      • Network Server APIs
      • Organization APIs
      • Packet Broker APIs
      • Storage Integration API
      • Tenant APIs
      • User APIs

Application APIs

List of Application APIs.

The ApplicationRegistry service

Method ApplicationRegistry.Create
Description Create a new application. This also sets the given organization or user as first collaborator with all possible rights.
Request type CreateApplicationRequest
Response type Application
HTTP bindings

POST /api/v3/users/{collaborator.user_ids.user_id}/applications

POST /api/v3/organizations/{collaborator.organization_ids.organization_id}/applications

Method ApplicationRegistry.Get
Description Get the application with the given identifiers, selecting the fields specified in the field mask. More or less fields may be returned, depending on the rights of the caller.
Request type GetApplicationRequest
Response type Application
HTTP bindings

GET /api/v3/applications/{application_ids.application_id}

Method ApplicationRegistry.List
Description List applications where the given user or organization is a direct collaborator. If no user or organization is given, this returns the applications the caller has access to. Similar to Get, this selects the fields given by the field mask. More or less fields may be returned, depending on the rights of the caller.
Request type ListApplicationsRequest
Response type Applications
HTTP bindings

GET /api/v3/applications

GET /api/v3/users/{collaborator.user_ids.user_id}/applications

GET /api/v3/organizations/{collaborator.organization_ids.organization_id}/applications

Method ApplicationRegistry.Update
Description Update the application, changing the fields specified by the field mask to the provided values.
Request type UpdateApplicationRequest
Response type Application
HTTP bindings

PUT /api/v3/applications/{application.ids.application_id}

Method ApplicationRegistry.Delete
Description Delete the application. This may not release the application ID for reuse. All end devices must be deleted from the application before it can be deleted.
Request type ApplicationIdentifiers
Response type google.protobuf.Empty
HTTP bindings

DELETE /api/v3/applications/{application_id}

Method ApplicationRegistry.Restore
Description

Restore a recently deleted application.

Deployment configuration may specify if, and for how long after deletion, entities can be restored.

Request type ApplicationIdentifiers
Response type google.protobuf.Empty
HTTP bindings

POST /api/v3/applications/{application_id}/restore

Method ApplicationRegistry.Purge
Description Purge the application. This will release the application ID for reuse. All end devices must be deleted from the application before it can be deleted. The application owner is responsible for clearing data from any (external) integrations that may store and expose data by application ID
Request type ApplicationIdentifiers
Response type google.protobuf.Empty
HTTP bindings

DELETE /api/v3/applications/{application_id}/purge

Method ApplicationRegistry.IssueDevEUI
Description Request DevEUI from the configured address block for a device inside the application. The maximum number of DevEUI’s issued per application can be configured.
Request type ApplicationIdentifiers
Response type IssueDevEUIResponse
HTTP bindings

POST /api/v3/applications/{application_id}/dev-eui

The EntityRegistrySearch service

Method EntityRegistrySearch.SearchApplications
Description Search for applications that match the conditions specified in the request. Non-admin users will only match applications that they have rights on.
Request type SearchApplicationsRequest
Response type Applications
HTTP bindings

GET /api/v3/search/applications

The ApplicationAccess service

Method ApplicationAccess.ListRights
Description List the rights the caller has on this application.
Request type ApplicationIdentifiers
Response type Rights
HTTP bindings

GET /api/v3/applications/{application_id}/rights

Method ApplicationAccess.CreateAPIKey
Description Create an API key scoped to this application.
Request type CreateApplicationAPIKeyRequest
Response type APIKey
HTTP bindings

POST /api/v3/applications/{application_ids.application_id}/api-keys

Method ApplicationAccess.DeleteAPIKey
Description Delete a single API key of this application.
Request type DeleteApplicationAPIKeyRequest
Response type google.protobuf.Empty
HTTP bindings

DELETE /api/v3/applications/{application_ids.application_id}/api-keys/{key_id}

Method ApplicationAccess.ListAPIKeys
Description List the API keys for this application.
Request type ListApplicationAPIKeysRequest
Response type APIKeys
HTTP bindings

GET /api/v3/applications/{application_ids.application_id}/api-keys

Method ApplicationAccess.GetAPIKey
Description Get a single API key of this application.
Request type GetApplicationAPIKeyRequest
Response type APIKey
HTTP bindings

GET /api/v3/applications/{application_ids.application_id}/api-keys/{key_id}

Method ApplicationAccess.UpdateAPIKey
Description Update the rights of an API key of the application. This method can also be used to delete the API key, by giving it no rights. The caller is required to have all assigned or/and removed rights.
Request type UpdateApplicationAPIKeyRequest
Response type APIKey
HTTP bindings

PUT /api/v3/applications/{application_ids.application_id}/api-keys/{api_key.id}

Method ApplicationAccess.GetCollaborator
Description Get the rights of a collaborator (member) of the application. Pseudo-rights in the response (such as the “_ALL” right) are not expanded.
Request type GetApplicationCollaboratorRequest
Response type GetCollaboratorResponse
HTTP bindings

/api/v3

GET /api/v3/applications/{application_ids.application_id}/collaborator/user/{collaborator.user_ids.user_id}

GET /api/v3/applications/{application_ids.application_id}/collaborator/organization/{collaborator.organization_ids.organization_id}

Method ApplicationAccess.DeleteCollaborator
Description DeleteCollaborator removes a collaborator from an application.
Request type DeleteApplicationCollaboratorRequest
Response type google.protobuf.Empty
HTTP bindings

/api/v3

DELETE /api/v3/applications/{application_ids.application_id}/collaborator/user/{collaborator_ids.user_ids.user_id}

DELETE /api/v3/applications/{application_ids.application_id}/collaborator/organization/{collaborator_ids.organization_ids.organization_id}

Method ApplicationAccess.SetCollaborator
Description Set the rights of a collaborator (member) on the application. This method can also be used to delete the collaborator, by giving them no rights. The caller is required to have all assigned or/and removed rights.
Request type SetApplicationCollaboratorRequest
Response type google.protobuf.Empty
HTTP bindings

PUT /api/v3/applications/{application_ids.application_id}/collaborators

Method ApplicationAccess.ListCollaborators
Description List the collaborators on this application.
Request type ListApplicationCollaboratorsRequest
Response type Collaborators
HTTP bindings

GET /api/v3/applications/{application_ids.application_id}/collaborators

The ApplicationActivationSettingRegistry service

Method ApplicationActivationSettingRegistry.Get
Description Get returns application activation settings.
Request type GetApplicationActivationSettingsRequest
Response type ApplicationActivationSettings
HTTP bindings

GET /api/v3/js/applications/{application_ids.application_id}/settings

Method ApplicationActivationSettingRegistry.Set
Description Set creates or updates application activation settings.
Request type SetApplicationActivationSettingsRequest
Response type ApplicationActivationSettings
HTTP bindings

POST /api/v3/js/applications/{application_ids.application_id}/settings

Method ApplicationActivationSettingRegistry.Delete
Description Delete deletes application activation settings.
Request type DeleteApplicationActivationSettingsRequest
Response type google.protobuf.Empty
HTTP bindings

DELETE /api/v3/js/applications/{application_ids.application_id}/settings

The ApplicationCryptoService service

Method ApplicationCryptoService.DeriveAppSKey
Description Derive the application session key (AppSKey).
Request type DeriveSessionKeysRequest
Response type AppSKeyResponse
HTTP bindings
Method ApplicationCryptoService.GetAppKey
Description Get the AppKey. Crypto Servers may return status code FAILED_PRECONDITION when root keys are not exposed.
Request type GetRootKeysRequest
Response type KeyEnvelope
HTTP bindings

Messages

Message APIKey

Show object example
{
  "id": "",
  "key": "",
  "name": "",
  "rights": [],
  "created_at": "0001-01-01T00:00:00Z",
  "updated_at": "0001-01-01T00:00:00Z",
  "expires_at": "0001-01-01T00:00:00Z",
}

Fields:

Field id
Type string
Description

Immutable and unique public identifier for the API key. Generated by the Access Server.

Field key
Type string
Description

Immutable and unique secret value of the API key. Generated by the Access Server.

Field name
Type string
Description

User-defined (friendly) name for the API key.

max_len: 50

Field rights
Type repeated Right
Description

Rights that are granted to this API key.

defined_only

Field created_at
Type google.protobuf. Timestamp
Field updated_at
Type google.protobuf. Timestamp
Field expires_at
Type google.protobuf. Timestamp
Description

gt_now

Message APIKeys

Show object example
{
  "api_keys": [],
}

Fields:

Field api_keys
Type repeated APIKey
Description

Message Application

Application is the message that defines an Application in the network.

Show object example
{
  "ids": {},
  "created_at": "0001-01-01T00:00:00Z",
  "updated_at": "0001-01-01T00:00:00Z",
  "deleted_at": "0001-01-01T00:00:00Z",
  "name": "",
  "description": "",
  "attributes": {},
  "contact_info": [],
  "administrative_contact": {},
  "technical_contact": {},
  "network_server_address": "",
  "application_server_address": "",
  "join_server_address": "",
  "dev_eui_counter": 0,
  "end_device_limit": null,
  "label_ids": [],
}

Fields:

Field ids
Type ApplicationIdentifiers
Description

The identifiers of the application. These are public and can be seen by any authenticated user in the network.

required

Field created_at
Type google.protobuf. Timestamp
Description

When the application was created. This information is public and can be seen by any authenticated user in the network.

Field updated_at
Type google.protobuf. Timestamp
Description

When the application was last updated. This information is public and can be seen by any authenticated user in the network.

Field deleted_at
Type google.protobuf. Timestamp
Description

When the application was deleted. This information is public and can be seen by any authenticated user in the network.

Field name
Type string
Description

The name of the application.

max_len: 50

Field description
Type string
Description

A description for the application.

max_len: 2000

Field attributes
Type map of string to string
Description

Key-value attributes for this application. Typically used for organizing applications or for storing integration-specific data.

max_pairs: 10

max_len (key): 36

pattern (key): ^[a-z0-9](?:[-]?[a-z0-9]){2,}$

max_len (value): 200

Field contact_info
Type repeated ContactInfo
Description

Contact information for this application. Typically used to indicate who to contact with technical/security questions about the application. This field is deprecated. Use administrative_contact and technical_contact instead.

max_items: 10

Field administrative_contact
Type OrganizationOrUserIdentifiers
Field technical_contact
Type OrganizationOrUserIdentifiers
Field network_server_address
Type string
Description

The address of the Network Server where this application is supposed to be registered. If set, this fields indicates where end devices for this application should be registered.

Stored in Entity Registry. The typical format of the address is “host:port”. If the port is omitted, the normal port inference (with DNS lookup, otherwise defaults) is used. The connection shall be established with transport layer security (TLS). Custom certificate authorities may be configured out-of-band.

pattern: ^(?:(?:[a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*(?:[A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])(?::[0-9]{1,5})?$|^$

Field application_server_address
Type string
Description

The address of the Application Server where this application is supposed to be registered. If set, this fields indicates where end devices for this application should be registered.

Stored in Entity Registry. The typical format of the address is “host:port”. If the port is omitted, the normal port inference (with DNS lookup, otherwise defaults) is used. The connection shall be established with transport layer security (TLS). Custom certificate authorities may be configured out-of-band.

pattern: ^(?:(?:[a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*(?:[A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])(?::[0-9]{1,5})?$|^$

Field join_server_address
Type string
Description

The address of the Join Server where this application is supposed to be registered. If set, this fields indicates where end devices for this application should be registered.

Stored in Entity Registry. The typical format of the address is “host:port”. If the port is omitted, the normal port inference (with DNS lookup, otherwise defaults) is used. The connection shall be established with transport layer security (TLS). Custom certificate authorities may be configured out-of-band.

pattern: ^(?:(?:[a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*(?:[A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])(?::[0-9]{1,5})?$|^$

Field dev_eui_counter
Type uint32
Field end_device_limit
Type google.protobuf. UInt64Value
Description

The limit of the number of end devices that can be registered for this application. This field can only be modified by admins.

Field label_ids
Type repeated string
Description

Message ApplicationIdentifiers

Show object example
{
  "application_id": "",
}

Fields:

Field application_id
Type string
Description

max_len: 36

pattern: ^[a-z0-9](?:[-]?[a-z0-9]){2,}$

Message Applications

Show object example
{
  "applications": [],
}

Fields:

Field applications
Type repeated Application
Description

Message ApplicationActivationSettings

Show object example
{
  "kek_label": "",
  "kek": {},
  "home_net_id": "",
  "application_server_id": "",
}

Fields:

Field kek_label
Type string
Description

The KEK label to use for wrapping application keys.

max_len: 2048

Field kek
Type KeyEnvelope
Description

The (encrypted) Key Encryption Key.

Field home_net_id
Type bytes
Description

Home NetID.

ignore_empty

len: 3

Field application_server_id
Type string
Description

The AS-ID of the Application Server to use.

max_len: 100

Message Collaborator

Show object example
{
  "ids": {},
  "rights": [],
}

Fields:

Field ids
Type OrganizationOrUserIdentifiers
Description

required

Field rights
Type repeated Right
Description

defined_only

Message Collaborators

Show object example
{
  "collaborators": [],
}

Fields:

Field collaborators
Type repeated Collaborator
Description

Message ContactInfo

Show object example
{
  "contact_type": "CONTACT_TYPE_OTHER",
  "contact_method": "CONTACT_METHOD_OTHER",
  "value": "",
  "public": false,
  "validated_at": "0001-01-01T00:00:00Z",
}

Fields:

Field contact_type
Type ContactType
Description

defined_only

Field contact_method
Type ContactMethod
Description

defined_only

Field value
Type string
Description

max_len: 256

Field public
Type bool
Field validated_at
Type google.protobuf. Timestamp

Message CreateApplicationAPIKeyRequest

Show object example
{
  "application_ids": {},
  "name": "",
  "rights": [],
  "expires_at": "0001-01-01T00:00:00Z",
}

Fields:

Field application_ids
Type ApplicationIdentifiers
Description

required

Field name
Type string
Description

max_len: 50

Field rights
Type repeated Right
Description

min_items: 1

unique

defined_only

Field expires_at
Type google.protobuf. Timestamp
Description

gt_now

Message CreateApplicationRequest

Show object example
{
  "application": {},
  "collaborator": {},
}

Fields:

Field application
Type Application
Description

required

Field collaborator
Type OrganizationOrUserIdentifiers
Description

Collaborator to grant all rights on the newly created application.

required

Message DeleteApplicationAPIKeyRequest

Show object example
{
  "application_ids": {},
  "key_id": "",
}

Fields:

Field application_ids
Type ApplicationIdentifiers
Description

required

Field key_id
Type string

Message DeleteApplicationActivationSettingsRequest

Show object example
{
  "application_ids": {},
}

Fields:

Field application_ids
Type ApplicationIdentifiers
Description

required

Message DeleteApplicationCollaboratorRequest

Show object example
{
  "application_ids": {},
  "collaborator_ids": {},
}

Fields:

Field application_ids
Type ApplicationIdentifiers
Description

required

Field collaborator_ids
Type OrganizationOrUserIdentifiers
Description

required

Message DeriveSessionKeysRequest

Show object example
{
  "ids": {},
  "lorawan_version": "MAC_UNKNOWN",
  "join_nonce": "",
  "dev_nonce": "",
  "net_id": "",
  "provisioner_id": "",
  "provisioning_data": {},
}

Fields:

Field ids
Type EndDeviceIdentifiers
Description

End device identifiers to use for key derivation. The DevAddr must be set in this request. The DevEUI may need to be set, depending on the provisioner.

required

Field lorawan_version
Type MACVersion
Description

LoRaWAN key derivation scheme.

defined_only

Field join_nonce
Type bytes
Description

LoRaWAN JoinNonce (or AppNonce).

ignore_empty

len: 3

Field dev_nonce
Type bytes
Description

LoRaWAN DevNonce.

ignore_empty

len: 2

Field net_id
Type bytes
Description

LoRaWAN NetID.

ignore_empty

len: 3

Field provisioner_id
Type string
Description

Provisioner that provisioned the end device.

max_len: 36

pattern: ^[a-z0-9](?:[-]?[a-z0-9]){2,}$|^$

Field provisioning_data
Type google.protobuf. Struct
Description

Provisioning data for the provisioner.

Message EndDeviceIdentifiers

Show object example
{
  "device_id": "",
  "application_ids": {},
  "dev_eui": "",
  "join_eui": "",
  "dev_addr": "",
}

Fields:

Field device_id
Type string
Description

max_len: 36

pattern: ^[a-z0-9](?:[-]?[a-z0-9]){2,}$

Field application_ids
Type ApplicationIdentifiers
Description

required

Field dev_eui
Type bytes
Description

The LoRaWAN DevEUI.

ignore_empty

len: 8

Field join_eui
Type bytes
Description

The LoRaWAN JoinEUI (AppEUI until LoRaWAN 1.0.3 end devices).

ignore_empty

len: 8

Field dev_addr
Type bytes
Description

The LoRaWAN DevAddr.

ignore_empty

len: 4

Message GetRootKeysRequest

Show object example
{
  "ids": {},
  "provisioner_id": "",
  "provisioning_data": {},
}

Fields:

Field ids
Type EndDeviceIdentifiers
Description

End device identifiers to request the root keys for.

required

Field provisioner_id
Type string
Description

Provisioner that provisioned the end device.

max_len: 36

pattern: ^[a-z0-9](?:[-]?[a-z0-9]){2,}$|^$

Field provisioning_data
Type google.protobuf. Struct
Description

Provisioning data for the provisioner.

Message GetApplicationAPIKeyRequest

Show object example
{
  "application_ids": {},
  "key_id": "",
}

Fields:

Field application_ids
Type ApplicationIdentifiers
Description

required

Field key_id
Type string
Description

Unique public identifier for the API key.

Message GetApplicationCollaboratorRequest

Show object example
{
  "application_ids": {},
  "collaborator": {},
}

Fields:

Field application_ids
Type ApplicationIdentifiers
Description

required

Field collaborator
Type OrganizationOrUserIdentifiers
Description

required

Message GetApplicationActivationSettingsRequest

Show object example
{
  "application_ids": {},
  "field_mask": {},
}

Fields:

Field application_ids
Type ApplicationIdentifiers
Description

required

Field field_mask
Type google.protobuf. FieldMask

Message GetApplicationRequest

Show object example
{
  "application_ids": {},
  "field_mask": {},
}

Fields:

Field application_ids
Type ApplicationIdentifiers
Description

required

Field field_mask
Type google.protobuf. FieldMask
Description

The names of the application fields that should be returned.

Message KeyEnvelope

Show object example
{
  "key": "",
  "kek_label": "",
  "encrypted_key": "",
}

Fields:

Field key
Type bytes
Description

The unencrypted AES key.

ignore_empty

len: 16

Field kek_label
Type string
Description

The label of the RFC 3394 key-encryption-key (KEK) that was used to encrypt the key.

max_len: 2048

Field encrypted_key
Type bytes
Description

max_len: 1024

Message GetCollaboratorResponse

Show object example
{
  "ids": {},
  "rights": [],
}

Fields:

Field ids
Type OrganizationOrUserIdentifiers
Field rights
Type repeated Right
Description

Message ListApplicationAPIKeysRequest

Show object example
{
  "application_ids": {},
  "order": "",
  "limit": 0,
  "page": 0,
}

Fields:

Field application_ids
Type ApplicationIdentifiers
Description

required

Field order
Type string
Description

Order the results by this field path. Default ordering is by ID. Prepend with a minus (-) to reverse the order.

in: [ api_key_id -api_key_id name -name created_at -created_at expires_at -expires_at]

Field limit
Type uint32
Description

Limit the number of results per page.

lte: 1000

Field page
Type uint32
Description

Page number for pagination. 0 is interpreted as 1.

Message ListApplicationCollaboratorsRequest

Show object example
{
  "application_ids": {},
  "limit": 0,
  "page": 0,
  "order": "",
}

Fields:

Field application_ids
Type ApplicationIdentifiers
Description

required

Field limit
Type uint32
Description

Limit the number of results per page.

lte: 1000

Field page
Type uint32
Description

Page number for pagination. 0 is interpreted as 1.

Field order
Type string
Description

Order the results by this field path (must be present in the field mask). Default ordering is by ID. Prepend with a minus (-) to reverse the order.

in: [ id -id -rights rights]

Message ListApplicationsRequest

Show object example
{
  "collaborator": {},
  "field_mask": {},
  "order": "",
  "limit": 0,
  "page": 0,
  "deleted": false,
}

Fields:

Field collaborator
Type OrganizationOrUserIdentifiers
Description

By default we list all applications the caller has rights on. Set the user or the organization (not both) to instead list the applications where the user or organization is collaborator on.

Field field_mask
Type google.protobuf. FieldMask
Description

The names of the application fields that should be returned.

Field order
Type string
Description

Order the results by this field path (must be present in the field mask). Default ordering is by ID. Prepend with a minus (-) to reverse the order.

in: [ application_id -application_id name -name created_at -created_at]

Field limit
Type uint32
Description

Limit the number of results per page.

lte: 1000

Field page
Type uint32
Description

Page number for pagination. 0 is interpreted as 1.

Field deleted
Type bool
Description

Only return recently deleted applications.

Message OrganizationOrUserIdentifiers

OrganizationOrUserIdentifiers contains either organization or user identifiers.

Restrictions:
  • Only one of organization_ids, user_ids can be set.
Show object example
{
  "organization_ids": {},
  "user_ids": {},
}

Fields:

Field organization_ids
Type OrganizationIdentifiers
Field user_ids
Type UserIdentifiers

Message OrganizationIdentifiers

Show object example
{
  "organization_id": "",
}

Fields:

Field organization_id
Type string
Description

This ID shares namespace with user IDs.

max_len: 36

pattern: ^[a-z0-9](?:[-]?[a-z0-9]){2,}$

Message Rights

Show object example
{
  "rights": [],
}

Fields:

Field rights
Type repeated Right
Description

defined_only

Message SearchApplicationsRequest

This message is used for finding applications in the EntityRegistrySearch service.

Show object example
{
  "query": "",
  "id_contains": "",
  "name_contains": "",
  "description_contains": "",
  "attributes_contain": {},
  "label_id_contains": [],
  "field_mask": {},
  "order": "",
  "limit": 0,
  "page": 0,
  "deleted": false,
}

Fields:

Field query
Type string
Description

Find applications where the ID, name or description contains this substring.

max_len: 50

Field id_contains
Type string
Description

Find applications where the ID contains this substring.

max_len: 50

Field name_contains
Type string
Description

Find applications where the name contains this substring.

max_len: 50

Field description_contains
Type string
Description

Find applications where the description contains this substring.

max_len: 50

Field attributes_contain
Type map of string to string
Description

Find applications where the given attributes contain these substrings.

max_pairs: 10

max_len (key): 36

pattern (key): ^[a-z0-9](?:[-]?[a-z0-9]){2,}$

max_len (value): 50

Field label_id_contains
Type repeated string
Description

Find applications where one of the label_ids contains this substring.

max_items: 10

max_len: 50

Field field_mask
Type google.protobuf. FieldMask
Field order
Type string
Description

Order the results by this field path (must be present in the field mask). Default ordering is by ID. Prepend with a minus (-) to reverse the order.

in: [ application_id -application_id name -name created_at -created_at]

Field limit
Type uint32
Description

Limit the number of results per page.

lte: 1000

Field page
Type uint32
Description

Page number for pagination. 0 is interpreted as 1.

Field deleted
Type bool
Description

Only return recently deleted applications.

Message SetApplicationCollaboratorRequest

Show object example
{
  "application_ids": {},
  "collaborator": {},
}

Fields:

Field application_ids
Type ApplicationIdentifiers
Description

required

Field collaborator
Type Collaborator
Description

required

Message SetApplicationActivationSettingsRequest

Show object example
{
  "application_ids": {},
  "settings": {},
  "field_mask": {},
}

Fields:

Field application_ids
Type ApplicationIdentifiers
Description

required

Field settings
Type ApplicationActivationSettings
Description

required

Field field_mask
Type google.protobuf. FieldMask

Message UpdateApplicationAPIKeyRequest

Show object example
{
  "application_ids": {},
  "api_key": {},
  "field_mask": {},
}

Fields:

Field application_ids
Type ApplicationIdentifiers
Description

required

Field api_key
Type APIKey
Description

required

Field field_mask
Type google.protobuf. FieldMask
Description

The names of the api key fields that should be updated.

Message UpdateApplicationRequest

Show object example
{
  "application": {},
  "field_mask": {},
}

Fields:

Field application
Type Application
Description

required

Field field_mask
Type google.protobuf. FieldMask
Description

The names of the application fields that should be updated.

Message UserIdentifiers

Show object example
{
  "user_id": "",
  "email": "",
}

Fields:

Field user_id
Type string
Description

This ID shares namespace with organization IDs.

max_len: 36

pattern: ^[a-z0-9](?:[-]?[a-z0-9]){1,}$

Field email
Type string
Description

Secondary identifier, which can only be used in specific requests.

Enums

Enum ContactType

Name Value Description
CONTACT_TYPE_OTHER 0
CONTACT_TYPE_ABUSE 1
CONTACT_TYPE_BILLING 2
CONTACT_TYPE_TECHNICAL 3

Enum ContactMethod

Name Value Description
CONTACT_METHOD_OTHER 0
CONTACT_METHOD_EMAIL 1
CONTACT_METHOD_PHONE 2

Enum MACVersion

Name Value Description
MAC_UNKNOWN 0
MAC_V1_0 1
MAC_V1_0_1 2
MAC_V1_0_2 3
MAC_V1_1 4
MAC_V1_0_3 5
MAC_V1_0_4 6

Enum Right

Right is the enum that defines all the different rights to do something in the network.

Name Value Description
right_invalid 0
RIGHT_USER_INFO 1 The right to view user information.
RIGHT_USER_SETTINGS_BASIC 2 The right to edit basic user settings.
RIGHT_USER_LIST 87 The right to list users accounts.
RIGHT_USER_CREATE 88 The right to create an user account.
RIGHT_USER_SETTINGS_API_KEYS 3 The right to view and edit user API keys.
RIGHT_USER_DELETE 4 The right to delete user account.
RIGHT_USER_PURGE 66 The right to purge user account.
RIGHT_USER_AUTHORIZED_CLIENTS 5 The right to view and edit authorized OAuth clients of the user.
RIGHT_USER_APPLICATIONS_LIST 6 The right to list applications the user is a collaborator of.
RIGHT_USER_APPLICATIONS_CREATE 7 The right to create an application under the user account.
RIGHT_USER_GATEWAYS_LIST 8 The right to list gateways the user is a collaborator of.
RIGHT_USER_GATEWAYS_CREATE 9 The right to create a gateway under the account of the user.
RIGHT_USER_CLIENTS_LIST 10 The right to list OAuth clients the user is a collaborator of.
RIGHT_USER_CLIENTS_CREATE 11 The right to create an OAuth client under the account of the user.
RIGHT_USER_ORGANIZATIONS_LIST 12 The right to list organizations the user is a member of.
RIGHT_USER_ORGANIZATIONS_CREATE 13 The right to create an organization under the user account.
RIGHT_USER_NOTIFICATIONS_READ 59 The right to read notifications sent to the user.
RIGHT_USER_ALL 14 The pseudo-right for all (current and future) user rights.
RIGHT_APPLICATION_INFO 15 The right to view application information.
RIGHT_APPLICATION_SETTINGS_BASIC 16 The right to edit basic application settings.
RIGHT_APPLICATION_SETTINGS_API_KEYS 17 The right to view and edit application API keys.
RIGHT_APPLICATION_SETTINGS_COLLABORATORS 18 The right to view and edit application collaborators.
RIGHT_APPLICATION_SETTINGS_PACKAGES 56 The right to view and edit application packages and associations.
RIGHT_APPLICATION_DELETE 19 The right to delete application.
RIGHT_APPLICATION_PURGE 64 The right to purge application.
RIGHT_APPLICATION_DEVICES_READ 20 The right to view devices in application.
RIGHT_APPLICATION_DEVICES_WRITE 21 The right to create devices in application.
RIGHT_APPLICATION_DEVICES_READ_KEYS 22 The right to view device keys in application. Note that keys may not be stored in a way that supports viewing them.
RIGHT_APPLICATION_DEVICES_WRITE_KEYS 23 The right to edit device keys in application.
RIGHT_APPLICATION_TRAFFIC_READ 24 The right to read application traffic (uplink and downlink).
RIGHT_APPLICATION_TRAFFIC_UP_WRITE 25 The right to write uplink application traffic.
RIGHT_APPLICATION_TRAFFIC_DOWN_WRITE 26 The right to write downlink application traffic.
RIGHT_APPLICATION_LINK 27 The right to link as Application to a Network Server for traffic exchange, i.e. read uplink and write downlink (API keys only). This right is typically only given to an Application Server. This right implies RIGHT_APPLICATION_INFO, RIGHT_APPLICATION_TRAFFIC_READ, and RIGHT_APPLICATION_TRAFFIC_DOWN_WRITE.
RIGHT_APPLICATION_ALL 28 The pseudo-right for all (current and future) application rights.
RIGHT_CLIENT_ALL 29 The pseudo-right for all (current and future) OAuth client rights.
RIGHT_CLIENT_INFO 60 The right to read client information.
RIGHT_CLIENT_SETTINGS_BASIC 61 The right to edit basic client settings.
RIGHT_CLIENT_SETTINGS_COLLABORATORS 62 The right to view and edit client collaborators.
RIGHT_CLIENT_DELETE 63 The right to delete a client.
RIGHT_CLIENT_PURGE 68 The right to purge a client.
RIGHT_GATEWAY_INFO 30 The right to view gateway information.
RIGHT_GATEWAY_SETTINGS_BASIC 31 The right to edit basic gateway settings.
RIGHT_GATEWAY_SETTINGS_API_KEYS 32 The right to view and edit gateway API keys.
RIGHT_GATEWAY_SETTINGS_COLLABORATORS 33 The right to view and edit gateway collaborators.
RIGHT_GATEWAY_DELETE 34 The right to delete gateway.
RIGHT_GATEWAY_PURGE 67 The right to purge gateway.
RIGHT_GATEWAY_TRAFFIC_READ 35 The right to read gateway traffic.
RIGHT_GATEWAY_TRAFFIC_DOWN_WRITE 36 The right to write downlink gateway traffic.
RIGHT_GATEWAY_LINK 37 The right to link as Gateway to a Gateway Server for traffic exchange, i.e. write uplink and read downlink (API keys only) This right is typically only given to a gateway. This right implies RIGHT_GATEWAY_INFO.
RIGHT_GATEWAY_STATUS_READ 38 The right to view gateway status.
RIGHT_GATEWAY_LOCATION_READ 39 The right to view view gateway location.
RIGHT_GATEWAY_WRITE_SECRETS 57 The right to store secrets associated with this gateway.
RIGHT_GATEWAY_READ_SECRETS 58 The right to retrieve secrets associated with this gateway.
RIGHT_GATEWAY_ALL 40 The pseudo-right for all (current and future) gateway rights.
RIGHT_ORGANIZATION_INFO 41 The right to view organization information.
RIGHT_ORGANIZATION_SETTINGS_BASIC 42 The right to edit basic organization settings.
RIGHT_ORGANIZATION_SETTINGS_API_KEYS 43 The right to view and edit organization API keys.
RIGHT_ORGANIZATION_SETTINGS_MEMBERS 44 The right to view and edit organization members.
RIGHT_ORGANIZATION_DELETE 45 The right to delete organization.
RIGHT_ORGANIZATION_PURGE 65 The right to purge organization.
RIGHT_ORGANIZATION_APPLICATIONS_LIST 46 The right to list the applications the organization is a collaborator of.
RIGHT_ORGANIZATION_APPLICATIONS_CREATE 47 The right to create an application under the organization.
RIGHT_ORGANIZATION_GATEWAYS_LIST 48 The right to list the gateways the organization is a collaborator of.
RIGHT_ORGANIZATION_GATEWAYS_CREATE 49 The right to create a gateway under the organization.
RIGHT_ORGANIZATION_CLIENTS_LIST 50 The right to list the OAuth clients the organization is a collaborator of.
RIGHT_ORGANIZATION_CLIENTS_CREATE 51 The right to create an OAuth client under the organization.
RIGHT_ORGANIZATION_ADD_AS_COLLABORATOR 52 The right to add the organization as a collaborator on an existing entity.
RIGHT_ORGANIZATION_ALL 53 The pseudo-right for all (current and future) organization rights.
RIGHT_SEND_INVITES 54 The right to send invites to new users. Note that this is not prefixed with “USER_”; it is not a right on the user entity.
RIGHT_ALERT_NOTIFICATION_PROFILE_CREATE 69 The right to create an alert notification profile.
RIGHT_ALERT_NOTIFICATION_PROFILE_INFO 70 The right to view an alert notification profile information.
RIGHT_ALERT_NOTIFICATION_PROFILE_LIST 71 The right to list the alert notification profiles.
RIGHT_ALERT_NOTIFICATION_PROFILE_UPDATE 72 The right to update an alert notification profiles.
RIGHT_ALERT_NOTIFICATION_PROFILE_DELETE 73 The right to delete an alert notification profiles.
RIGHT_ALERT_NOTIFICATION_RECEIVER_CREATE 74 The right to create an alert notification receiver.
RIGHT_ALERT_NOTIFICATION_RECEIVER_INFO 75 The right to view an alert notification receiver information.
RIGHT_ALERT_NOTIFICATION_RECEIVER_LIST 76 The right to list the alert notification receivers.
RIGHT_ALERT_NOTIFICATION_RECEIVER_UPDATE 77 The right to update an alert notification receivers.
RIGHT_ALERT_NOTIFICATION_RECEIVER_DELETE 78 The right to delete an alert notification receivers.
RIGHT_AUTHENTICATION_PROVIDER_CREATE 79 The right to create an authentication provider.
RIGHT_AUTHENTICATION_PROVIDER_INFO 80 The right to view an authentication provider information.
RIGHT_AUTHENTICATION_PROVIDER_LIST 81 The right to list the authentication providers
RIGHT_AUTHENTICATION_PROVIDER_UPDATE 82 The right to update an authentication providers.
RIGHT_AUTHENTICATION_PROVIDER_DELETE 83 The right to delete an authentication providers.
RIGHT_EXTERNAL_USER_CREATE 84 The right to create an external user.
RIGHT_EXTERNAL_USER_INFO 85 The right to view an external user’s information.
RIGHT_EXTERNAL_USER_DELETE 86 The right to delete an external user.
RIGHT_PACKET_BROKER_AGENT_READ 89 The right to read any information related to the PBA.
RIGHT_PACKET_BROKER_AGENT_WRITE 90 The right to perform operations in the PBA.
RIGHT_TENANT_CONFIGURATION_UPDATE 91 The right to update a tenant’s configuration.
RIGHT_LABEL_CREATE 92 The right to create a label.
RIGHT_LABEL_INFO 93 The right to view a label’s information.
RIGHT_LABELS_LIST 94 The right to list the labels.
RIGHT_LABEL_UPDATE 95 The right to update a label.
RIGHT_LABEL_DELETE 96 The right to delete a label.
RIGHT_LABEL_ASSIGN 97 The right to assign a label to an entity.
RIGHT_ALL 55 The pseudo-right for all (current and future) possible rights.
← gRPC Application Package APIs →

On this page

  • The ApplicationRegistry service
  • The EntityRegistrySearch service
  • The ApplicationAccess service
  • The ApplicationActivationSettingRegistry service
  • The ApplicationCryptoService service
  • Messages
  • Enums

Sections

Getting Started

Concepts

The Things Stack Cloud

The Things Stack Enterprise

Integrations

API

Hardware

Sitemap

View our Sitemap

Contributing

GitHub

About Us

The Things Industries