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

Identity Server APIs

List of Identity Server APIs.

The AuthenticationProviderRegistry service

Method AuthenticationProviderRegistry.Create
Request type CreateAuthenticationProviderRequest
Response type AuthenticationProvider
HTTP bindings

POST /api/v3/authentication_providers

Method AuthenticationProviderRegistry.Get
Request type GetAuthenticationProviderRequest
Response type AuthenticationProvider
HTTP bindings

GET /api/v3/authentication_providers/{ids.provider_id}

Method AuthenticationProviderRegistry.List
Request type ListAuthenticationProvidersRequest
Response type AuthenticationProviders
HTTP bindings

GET /api/v3/authentication_providers

Method AuthenticationProviderRegistry.Update
Request type UpdateAuthenticationProviderRequest
Response type AuthenticationProvider
HTTP bindings

PUT /api/v3/authentication_providers/{provider.ids.provider_id}

Method AuthenticationProviderRegistry.Delete
Request type AuthenticationProviderIdentifiers
Response type google.protobuf.Empty
HTTP bindings

DELETE /api/v3/authentication_providers/{provider_id}

The ContactInfoRegistry service

Method ContactInfoRegistry.RequestValidation
Description Request validation for the non-validated contact info for the given entity.
Request type EntityIdentifiers
Response type ContactInfoValidation
HTTP bindings

POST /api/v3/contact_info/validation

Method ContactInfoRegistry.Validate
Description Validate confirms a contact info validation.
Request type ContactInfoValidation
Response type google.protobuf.Empty
HTTP bindings

PATCH /api/v3/contact_info/validation

The EntityRegistrySearch service

Method EntityRegistrySearch.SearchAccounts
Description Search for accounts that match the conditions specified in the request.
Request type SearchAccountsRequest
Response type SearchAccountsResponse
HTTP bindings

GET /api/v3/search/accounts

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

GET /api/v3/clients/{client_ids.client_id}/collaborators/search

GET /api/v3/gateways/{gateway_ids.gateway_id}/collaborators/search

GET /api/v3/organizations/{organization_ids.organization_id}/collaborators/search

The EntityAccess service

Method EntityAccess.AuthInfo
Description AuthInfo returns information about the authentication that is used on the request.
Request type google.protobuf.Empty
Response type AuthInfoResponse
HTTP bindings

GET /api/v3/auth_info

The Is service

Method Is.GetConfiguration
Description Get the configuration of the Identity Server. The response is typically used to enable or disable features in a user interface.
Request type GetIsConfigurationRequest
Response type GetIsConfigurationResponse
HTTP bindings

GET /api/v3/is/configuration

The OAuthAuthorizationRegistry service

Method OAuthAuthorizationRegistry.List
Description List OAuth clients that are authorized by the user.
Request type ListOAuthClientAuthorizationsRequest
Response type OAuthClientAuthorizations
HTTP bindings

GET /api/v3/users/{user_ids.user_id}/authorizations

Method OAuthAuthorizationRegistry.ListTokens
Description List OAuth access tokens issued to the OAuth client on behalf of the user.
Request type ListOAuthAccessTokensRequest
Response type OAuthAccessTokens
HTTP bindings

GET /api/v3/users/{user_ids.user_id}/authorizations/{client_ids.client_id}/tokens

Method OAuthAuthorizationRegistry.Delete
Description Delete (de-authorize) an OAuth client for the user.
Request type OAuthClientAuthorizationIdentifiers
Response type google.protobuf.Empty
HTTP bindings

DELETE /api/v3/users/{user_ids.user_id}/authorizations/{client_ids.client_id}

Method OAuthAuthorizationRegistry.DeleteToken
Description Delete (invalidate) an OAuth access token.
Request type OAuthAccessTokenIdentifiers
Response type google.protobuf.Empty
HTTP bindings

DELETE /api/v3/users/{user_ids.user_id}/authorizations/{client_ids.client_id}/tokens/{id}

The GatewayBatchAccess service

Method GatewayBatchAccess.AssertRights
Description Assert that the caller has the requested rights on all the requested gateways. The check is successful if there are no errors.
Request type AssertGatewayRightsRequest
Response type google.protobuf.Empty
HTTP bindings

GET /api/v3/gateways/rights/batch

The GatewayBatchRegistry service

Method GatewayBatchRegistry.Delete
Description Delete a batch of gateways. This operation is atomic; either all gateways are deleted or none. The caller must have delete rights on all requested gateways.
Request type BatchDeleteGatewaysRequest
Response type google.protobuf.Empty
HTTP bindings

DELETE /api/v3/gateways/batch

The AlertNotificationProfileRegistry service

Method AlertNotificationProfileRegistry.Create
Description Create a new alert notification profile.
Request type CreateAlertNotificationProfileRequest
Response type AlertNotificationProfile
HTTP bindings

POST /api/v3/alerts/notifications/profiles

Method AlertNotificationProfileRegistry.Get
Description Get an existing alert notification profile.
Request type GetAlertNotificationProfileRequest
Response type AlertNotificationProfile
HTTP bindings

GET /api/v3/alerts/notifications/profiles/{ids.profile_id}

Method AlertNotificationProfileRegistry.List
Description List existing alert notification profiles. Returns all profiles if no identifiers are provided. If provided, the identifiers are used to filter which profiles are returned.
Request type ListAlertNotificationProfilesRequest
Response type AlertNotificationProfiles
HTTP bindings

GET /api/v3/alerts/notifications/profiles

Method AlertNotificationProfileRegistry.Update
Description Update an existing alert notification profile.
Request type UpdateAlertNotificationProfileRequest
Response type AlertNotificationProfile
HTTP bindings

PUT /api/v3/alerts/notifications/profiles/{profile.ids.profile_id}

Method AlertNotificationProfileRegistry.Delete
Description Delete an existing alert notification profile.
Request type ttn.lorawan.v3.AlertNotificationProfileIdentifiers
Response type google.protobuf.Empty
HTTP bindings

DELETE /api/v3/alerts/notifications/profiles/{profile_id}

Method AlertNotificationProfileRegistry.GetDefault
Description Get the default alert notification profile.
Request type GetDefaultAlertNotificationProfileRequest
Response type AlertNotificationProfile
HTTP bindings

GET /api/v3/alerts/notifications/profiles/default

The AlertNotificationReceiverRegistry service

Method AlertNotificationReceiverRegistry.Create
Description Create a new alert notification receiver.
Request type CreateAlertNotificationReceiverRequest
Response type AlertNotificationReceiver
HTTP bindings

POST /api/v3/alerts/notifications/receivers

Method AlertNotificationReceiverRegistry.Get
Description Get an existing alert notification receiver.
Request type GetAlertNotificationReceiverRequest
Response type AlertNotificationReceiver
HTTP bindings

GET /api/v3/alerts/notifications/receivers/{ids.receiver_id}

Method AlertNotificationReceiverRegistry.List
Description List existing alert notification receivers. Returns all receivers if no identifiers are provided.
Request type ListAlertNotificationReceiversRequest
Response type AlertNotificationReceivers
HTTP bindings

GET /api/v3/alerts/notifications/receivers

Method AlertNotificationReceiverRegistry.Update
Description Update an existing alert notification receiver.
Request type UpdateAlertNotificationReceiverRequest
Response type AlertNotificationReceiver
HTTP bindings

PUT /api/v3/alerts/notifications/receivers/{receiver.ids.receiver_id}

Method AlertNotificationReceiverRegistry.Delete
Description Delete an existing alert notification receiver.
Request type AlertNotificationReceiverIdentifiers
Response type google.protobuf.Empty
HTTP bindings

DELETE /api/v3/alerts/notifications/receivers/{receiver_id}

The Ars service

Method Ars.GetConfiguration
Request type GetArsConfigurationRequest
Response type GetArsConfigurationResponse
HTTP bindings

GET /api/v3/ars/configuration

Messages

Message AlertNotificationProfile

Show object example
{
  "ids": {},
  "created_at": "0001-01-01T00:00:00Z",
  "updated_at": "0001-01-01T00:00:00Z",
  "is_default": null,
  "name": "",
  "description": "",
  "receivers_ids": [],
}

Fields:

Field ids
Type ttn.lorawan.v3. AlertNotificationProfileIdentifiers
Description

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

required

Field created_at
Type google.protobuf. Timestamp
Field updated_at
Type google.protobuf. Timestamp
Field is_default
Type google.protobuf. BoolValue
Description

Whether this profile is the default alert notification profile for the network.

Field name
Type string
Description

max_len: 50

Field description
Type string
Description

max_len: 256

Field receivers_ids
Type repeated AlertNotificationReceiverIdentifiers
Description

List of receivers that will be notified when an alert is triggered for this profile.

max_items: 20

Message AlertNotificationReceiverIdentifiers

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

Fields:

Field receiver_id
Type string
Description

max_len: 36

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

Message AlertNotificationReceiver

Restrictions:
  • Only one of email, sms, webhook can be set.
Show object example
{
  "ids": {},
  "created_at": "0001-01-01T00:00:00Z",
  "updated_at": "0001-01-01T00:00:00Z",
  "name": "",
  "email": {},
  "sms": {},
  "webhook": {},
}

Fields:

Field ids
Type AlertNotificationReceiverIdentifiers
Description

The identifiers of the receiver. These can be seen by any admin user in the network.

required

Field created_at
Type google.protobuf. Timestamp
Field updated_at
Type google.protobuf. Timestamp
Field name
Type string
Description

max_len: 50

Field email
Type AlertNotificationReceiver.Email
Field sms
Type AlertNotificationReceiver.SMS
Field webhook
Type AlertNotificationReceiver.Webhook

Message AlertNotificationReceiver.Email

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

Fields:

Field recipient
Type string
Description

email

Message AlertNotificationReceiver.SMS

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

Fields:

Field phone_number
Type string
Description

According to the international phone numbering plan (ITU-T E. 164) phone numbers cannot contain less than 7 digits and more than 15 digits. The validation is done via an regex and accounts for the ‘+’ formating character.

pattern: ^[+]?[0-9]{7,15}$

Message AlertNotificationReceiver.Webhook

Show object example
{
  "url": "",
  "headers": {},
}

Fields:

Field url
Type string
Description

uri

Field headers
Type map of string to string
Description

ignore_empty

max_pairs: 50

max_len (key): 64

max_len (value): 4096

Message ArsConfiguration

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

Fields:

Field routing
Type ArsConfiguration.Routing

Message ArsConfiguration.Routing

Show object example
{
  "enabled": null,
}

Fields:

Field enabled
Type google.protobuf. BoolValue

Message AssertGatewayRightsRequest

Show object example
{
  "gateway_ids": [],
  "required": {},
}

Fields:

Field gateway_ids
Type repeated GatewayIdentifiers
Description

max_items: 100

min_items: 1

Field required
Type Rights
Description

required

Message AuthenticationProvider

Show object example
{
  "ids": {},
  "created_at": "0001-01-01T00:00:00Z",
  "updated_at": "0001-01-01T00:00:00Z",
  "name": "",
  "allow_registrations": false,
  "configuration": {},
  "allowed_email_domains": [],
}

Fields:

Field ids
Type AuthenticationProviderIdentifiers
Description

required

Field created_at
Type google.protobuf. Timestamp
Field updated_at
Type google.protobuf. Timestamp
Field name
Type string
Description

max_len: 50

Field allow_registrations
Type bool
Field configuration
Type AuthenticationProvider.Configuration
Field allowed_email_domains
Type repeated string
Description

Allowed email domains for this provider. If this field is set, only emails with the specified domains will be allowed to login. The server also skips checking the email_verified field of the claims token. We highly recommend admins of such providers to not allow users to change their email addresses with the provider due to lack of verification.

max_items: 10

unique

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])$

Message AuthenticationProvider.Configuration

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

Fields:

Field oidc
Type AuthenticationProvider.OIDC

Message AuthenticationProvider.OIDC

Show object example
{
  "client_id": "",
  "client_secret": "",
  "provider_url": "",
}

Fields:

Field client_id
Type string
Field client_secret
Type string
Field provider_url
Type string
Description

uri

Message AuthenticationProviders

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

Fields:

Field providers
Type repeated AuthenticationProvider
Description

Message BatchDeleteGatewaysRequest

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

Fields:

Field gateway_ids
Type repeated GatewayIdentifiers
Description

max_items: 20

min_items: 1

Message CreateAuthenticationProviderRequest

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

Fields:

Field provider
Type AuthenticationProvider
Description

required

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 ContactInfoValidation

Show object example
{
  "id": "",
  "token": "",
  "entity": {},
  "contact_info": [],
  "created_at": "0001-01-01T00:00:00Z",
  "expires_at": "0001-01-01T00:00:00Z",
  "updated_at": "0001-01-01T00:00:00Z",
}

Fields:

Field id
Type string
Description

max_len: 64

min_len: 1

Field token
Type string
Description

max_len: 64

min_len: 1

Field entity
Type EntityIdentifiers
Field contact_info
Type repeated ContactInfo
Description
Field created_at
Type google.protobuf. Timestamp
Field expires_at
Type google.protobuf. Timestamp
Field updated_at
Type google.protobuf. Timestamp

Message CreateAlertNotificationProfileRequest

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

Fields:

Field profile
Type AlertNotificationProfile
Description

required

Message CreateAlertNotificationReceiverRequest

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

Fields:

Field receiver
Type AlertNotificationReceiver
Description

required

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 EntityIdentifiers

EntityIdentifiers contains one of the possible entity identifiers.

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

Fields:

Field application_ids
Type ApplicationIdentifiers
Field client_ids
Type ClientIdentifiers
Field device_ids
Type EndDeviceIdentifiers
Field gateway_ids
Type GatewayIdentifiers
Field organization_ids
Type OrganizationIdentifiers
Field user_ids
Type UserIdentifiers

Message GetAuthenticationProviderRequest

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

Fields:

Field ids
Type AuthenticationProviderIdentifiers
Description

required

Field field_mask
Type google.protobuf. FieldMask

Message ListAuthenticationProvidersRequest

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

Fields:

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: [ provider_id -provider_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.

Message UpdateAuthenticationProviderRequest

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

Fields:

Field provider
Type AuthenticationProvider
Description

required

Field field_mask
Type google.protobuf. FieldMask

Message AuthenticationProviderIdentifiers

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

Fields:

Field provider_id
Type string
Description

max_len: 36

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

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 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 AuthInfoResponse

Restrictions:
  • Only one of api_key, oauth_access_token, user_session, gateway_token can be set.
Show object example
{
  "api_key": {},
  "oauth_access_token": {},
  "user_session": {},
  "gateway_token": {},
  "universal_rights": {},
  "is_admin": false,
}

Fields:

Field api_key
Type AuthInfoResponse.APIKeyAccess
Field oauth_access_token
Type OAuthAccessToken
Field user_session
Type UserSession
Description

Warning: A user authorized by session cookie will be granted all current and future rights. When using this auth type, the respective handlers need to ensure thorough CSRF and CORS protection using appropriate middleware.

Field gateway_token
Type AuthInfoResponse.GatewayToken
Field universal_rights
Type Rights
Field is_admin
Type bool

Message AuthInfoResponse.APIKeyAccess

Show object example
{
  "api_key": {},
  "entity_ids": {},
}

Fields:

Field api_key
Type APIKey
Description

required

Field entity_ids
Type EntityIdentifiers
Description

required

Message AuthInfoResponse.GatewayToken

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

Fields:

Field gateway_ids
Type GatewayIdentifiers
Description

required

Field rights
Type repeated Right
Description

Message ClientIdentifiers

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

Fields:

Field client_id
Type string
Description

max_len: 36

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

Message GatewayIdentifiers

Show object example
{
  "gateway_id": "",
  "eui": "",
}

Fields:

Field gateway_id
Type string
Description

max_len: 36

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

Field eui
Type bytes
Description

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

ignore_empty

len: 8

Message GetArsConfigurationRequest

Show object example
{
}

Fields:

Message GetArsConfigurationResponse

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

Fields:

Field configuration
Type ArsConfiguration

Message GetAlertNotificationProfileRequest

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

Fields:

Field ids
Type ttn.lorawan.v3. AlertNotificationProfileIdentifiers
Description

required

Field field_mask
Type google.protobuf. FieldMask

Message GetDefaultAlertNotificationProfileRequest

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

Fields:

Field field_mask
Type google.protobuf. FieldMask

Message GetAlertNotificationReceiverRequest

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

Fields:

Field ids
Type AlertNotificationReceiverIdentifiers
Description

required

Field field_mask
Type google.protobuf. FieldMask

Message GetIsConfigurationRequest

Show object example
{
}

Fields:

Message GetIsConfigurationRequest

Show object example
{
}

Fields:

Message OAuthClientAuthorizationIdentifiers

Show object example
{
  "user_ids": {},
  "client_ids": {},
}

Fields:

Field user_ids
Type UserIdentifiers
Description

required

Field client_ids
Type ClientIdentifiers
Description

required

Message ListOAuthClientAuthorizationsRequest

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

Fields:

Field user_ids
Type UserIdentifiers
Description

required

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: [ 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.

Message ListOAuthAccessTokensRequest

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

Fields:

Field user_ids
Type UserIdentifiers
Description

required

Field client_ids
Type ClientIdentifiers
Description

required

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: [ 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.

Message ListAlertNotificationProfilesRequest

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

Fields:

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: [ profile_id -profile_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.

Message ListAlertNotificationReceiversRequest

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

Fields:

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: [ receiver_id -receiver_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.

Message OAuthAccessToken

Show object example
{
  "user_ids": {},
  "user_session_id": "",
  "client_ids": {},
  "id": "",
  "access_token": "",
  "refresh_token": "",
  "rights": [],
  "created_at": "0001-01-01T00:00:00Z",
  "expires_at": "0001-01-01T00:00:00Z",
}

Fields:

Field user_ids
Type UserIdentifiers
Description

required

Field user_session_id
Type string
Description

max_len: 64

Field client_ids
Type ClientIdentifiers
Description

required

Field id
Type string
Field access_token
Type string
Field refresh_token
Type string
Field rights
Type repeated Right
Description
Field created_at
Type google.protobuf. Timestamp
Field expires_at
Type google.protobuf. Timestamp

Message OAuthAccessTokenIdentifiers

Show object example
{
  "user_ids": {},
  "client_ids": {},
  "id": "",
}

Fields:

Field user_ids
Type UserIdentifiers
Description

required

Field client_ids
Type ClientIdentifiers
Description

required

Field id
Type string

Message OAuthAccessTokens

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

Fields:

Field tokens
Type repeated OAuthAccessToken
Description

Message OAuthClientAuthorization

Show object example
{
  "user_ids": {},
  "client_ids": {},
  "rights": [],
  "created_at": "0001-01-01T00:00:00Z",
  "updated_at": "0001-01-01T00:00:00Z",
}

Fields:

Field user_ids
Type UserIdentifiers
Description

required

Field client_ids
Type ClientIdentifiers
Description

required

Field rights
Type repeated Right
Description
Field created_at
Type google.protobuf. Timestamp
Field updated_at
Type google.protobuf. Timestamp

Message OAuthClientAuthorizations

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

Fields:

Field authorizations
Type repeated OAuthClientAuthorization
Description

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 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 Rights

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

Fields:

Field rights
Type repeated Right
Description

defined_only

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.

Message UserSession

Show object example
{
  "user_ids": {},
  "session_id": "",
  "created_at": "0001-01-01T00:00:00Z",
  "updated_at": "0001-01-01T00:00:00Z",
  "expires_at": "0001-01-01T00:00:00Z",
  "session_secret": "",
}

Fields:

Field user_ids
Type UserIdentifiers
Description

required

Field session_id
Type string
Description

max_len: 64

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

The session secret is used to compose an authorization key and is never returned.

Message SearchAccountsRequest

Restrictions:
  • Only one of application_ids, client_ids, gateway_ids, organization_ids can be set.
Show object example
{
  "query": "",
  "only_users": false,
  "application_ids": {},
  "client_ids": {},
  "gateway_ids": {},
  "organization_ids": {},
  "complement_collaborators": false,
}

Fields:

Field query
Type string
Description

max_len: 50

Field only_users
Type bool
Field application_ids
Type ApplicationIdentifiers
Field client_ids
Type ClientIdentifiers
Field gateway_ids
Type GatewayIdentifiers
Field organization_ids
Type OrganizationIdentifiers
Field complement_collaborators
Type bool

Message SearchAccountsResponse

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

Fields:

Field account_ids
Type repeated OrganizationOrUserIdentifiers
Description

Message UpdateAlertNotificationProfileRequest

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

Fields:

Field profile
Type AlertNotificationProfile
Description

required

Field field_mask
Type google.protobuf. FieldMask

Message UpdateAlertNotificationReceiverRequest

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

Fields:

Field receiver
Type AlertNotificationReceiver
Description

required

Field field_mask
Type google.protobuf. FieldMask

Enum ContactMethod

Name Value Description
CONTACT_METHOD_OTHER 0
CONTACT_METHOD_EMAIL 1
CONTACT_METHOD_PHONE 2

Enum ContactType

Name Value Description
CONTACT_TYPE_OTHER 0
CONTACT_TYPE_ABUSE 1
CONTACT_TYPE_BILLING 2
CONTACT_TYPE_TECHNICAL 3

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.
← Gateway Server APIs Join Server APIs →

On this page

  • The AuthenticationProviderRegistry service
  • The ContactInfoRegistry service
  • The EntityRegistrySearch service
  • The EntityAccess service
  • The Is service
  • The OAuthAuthorizationRegistry service
  • The GatewayBatchAccess service
  • The GatewayBatchRegistry service
  • The AlertNotificationProfileRegistry service
  • The AlertNotificationReceiverRegistry service
  • The Ars service
  • Messages

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