thethingsstack.io has moved to thethingsindustries.com/docs
Got it

v3.12

Getting Started Devices Gateways Integrations Reference
Get The Things Stack

Reference

    Overview
  • Billing with Stripe
  • API
    • Authentication
    • Fields and Field Masks
    • Application APIs
    • Application Pub/Sub APIs
    • Application Server APIs
    • Application Webhook APIs
    • End Device APIs
    • End Device Claiming APIs
    • Events API
    • Gateway APIs
    • Gateway Server APIs
    • Gateway Server MQTT
    • Network Server APIs
    • Organization APIs
    • Storage Integration API
    • Tenant APIs
    • User APIs
  • Application Packages
  • Command-Line Interface
  • Components
  • Configuration
  • Data Formats
  • Email Templates
  • Federated Authentication
  • Frequency Plans
  • Glossary
  • ID and EUI Constraints
  • Interoperability Repository
  • LoRaWAN Specification and Regional Parameters
  • Networking
  • Packet Broker
  • Rate Limiting
  • Root Certificates
  • Telemetry
  • Web UI Branding

Events API

The Events service

Method Events.Stream
Description Stream live events, optionally with a tail of historical events (depending on server support and retention policy). Events may arrive out-of-order.
Request type StreamEventsRequest
Response type Stream of Event
The HTTP API uses Content-Type: text/event-stream
and a response body of newline-delimited JSON.
Make sure to send Accept: text/event-stream in the request.
HTTP bindings

POST /api/v3/events

Messages

Message EntityIdentifiers

EntityIdentifiers contains one of the possible entity identifiers.

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
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": {},
}

Message ApplicationIdentifiers

Field application_id
Type string
Description

max_len: 36

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

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

Message ClientIdentifiers

Field client_id
Type string
Description

max_len: 36

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

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

Message EndDeviceIdentifiers

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.

Field join_eui
Type bytes
Description

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

Field dev_addr
Type bytes
Description

The LoRaWAN DevAddr.

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

Message GatewayIdentifiers

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.

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

Message OrganizationIdentifiers

Field organization_id
Type string
Description

This ID shares namespace with user IDs.

max_len: 36

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

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

Message UserIdentifiers

Field user_id
Type string
Description

This ID shares namespace with organization IDs.

max_len: 36

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

Field email
Type string
Description

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

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

Message Event

Field name
Type string
Description

Name of the event. This can be used to find the (localized) event description.

Field time
Type google.protobuf.Timestamp
Description

Time at which the event was triggered.

required

Field identifiers
Type repeated EntityIdentifiers
Description

Identifiers of the entity (or entities) involved.

Field data
Type google.protobuf.Any
Description

Optional data attached to the event.

Field correlation_ids
Type repeated string
Description

Correlation IDs can be used to find related events and actions such as API calls.

max_len: 100

Field origin
Type string
Description

The origin of the event. Typically the hostname of the server that created it.

Field context
Type map of string to bytes
Description

Event context, internal use only.

Field visibility
Type Rights
Description

The event will be visible to a caller that has any of these rights.

Field authentication
Type Event.Authentication
Description

Details on the authentication provided by the caller that triggered this event.

Field remote_ip
Type string
Description

The IP address of the caller that triggered this event.

Field user_agent
Type string
Description

The IP address of the caller that triggered this event.

Field unique_id
Type string
Description

The unique identifier of the event, assigned on creation.

Show object example
{
  "name": "",
  "time": "0001-01-01T00:00:00Z",
  "identifiers": [],
  "data": null,
  "correlation_ids": [],
  "origin": "",
  "context": {},
  "visibility": {},
  "authentication": {},
  "remote_ip": "",
  "user_agent": "",
  "unique_id": "",
}

Message Event.Authentication

Field type
Type string
Description

The type of authentication that was used. This is typically a bearer token.

Field token_type
Type string
Description

The type of token that was used. Common types are APIKey, AccessToken and SessionToken.

Field token_id
Type string
Description

The ID of the token that was used.

Show object example
{
  "type": "",
  "token_type": "",
  "token_id": "",
}

Message StreamEventsRequest

Field identifiers
Type repeated EntityIdentifiers
Description
Field tail
Type uint32
Description

If greater than zero, this will return historical events, up to this maximum when the stream starts. If used in combination with “after”, the limit that is reached first, is used. The availability of historical events depends on server support and retention policy.

Field after
Type google.protobuf.Timestamp
Description

If not empty, this will return historical events after the given time when the stream starts. If used in combination with “tail”, the limit that is reached first, is used. The availability of historical events depends on server support and retention policy.

Show object example
{
  "identifiers": [],
  "tail": 0,
  "after": "0001-01-01T00:00:00Z",
}

Events

Event application.api-key.create

create application API key

Event application.api-key.delete

delete application API key

Event application.api-key.update

update application API key

Event application.collaborator.delete

delete application collaborator

Event application.collaborator.update

update application collaborator

Event application.create

create application

Event application.delete

delete application

Event application.update

update application

Show example of data field
{
  "@type": "type.googleapis.com/google.protobuf.Value",
  "value": [
    "list.of",
    "updated.fields"
  ]
}

Event as.application.subscribe

subscribe application

Event as.application.unsubscribe

unsubscribe application

Event as.down.data.decode.fail

decode downlink data message failure

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event as.down.data.decode.warning

decode downlink data message warning

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ApplicationDownlink"
}

Event as.down.data.drop

drop downlink data message

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event as.down.data.encode.fail

encode downlink data message failure

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event as.down.data.encode.warning

encode downlink data message warning

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ApplicationDownlink"
}

Event as.down.data.forward

forward downlink data message

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ApplicationDownlink"
}

Event as.down.data.queue.invalid

invalid downlink data queue

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event as.down.data.queue.lost

lose downlink data queue

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event as.down.data.receive

receive downlink data message

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ApplicationDownlink"
}

Event as.end_device.create

create end device

Event as.end_device.delete

delete end device

Event as.end_device.update

update end device

Show example of data field
{
  "@type": "type.googleapis.com/google.protobuf.Value",
  "value": [
    "list.of",
    "updated.fields"
  ]
}

Event as.link.fail

fail link

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event as.link.start

start link

Event as.link.stop

stop link

Event as.pubsub.delete

delete pub/sub

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ApplicationPubSubIdentifiers",
  "application_ids": {
    "application_id": "application-id"
  },
  "pub_sub_id": "pubsub-id"
}

Event as.pubsub.fail

fail pub/sub

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event as.pubsub.set

set pub/sub

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ApplicationPubSubIdentifiers",
  "application_ids": {
    "application_id": "application-id"
  },
  "pub_sub_id": "pubsub-id"
}

Event as.pubsub.start

start pub/sub

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ApplicationPubSubIdentifiers",
  "application_ids": {
    "application_id": "application-id"
  },
  "pub_sub_id": "pubsub-id"
}

Event as.pubsub.stop

stop pub/sub

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ApplicationPubSubIdentifiers",
  "application_ids": {
    "application_id": "application-id"
  },
  "pub_sub_id": "pubsub-id"
}

Event as.up.data.decode.fail

decode uplink data message failure

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event as.up.data.decode.warning

decode uplink data message warning

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ApplicationUplink",
  "received_at": "0001-01-01T00:00:00Z",
  "settings": {
    "data_rate": {}
  }
}

Event as.up.data.drop

drop uplink data message

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event as.up.data.forward

forward uplink data message

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ApplicationUp",
  "end_device_ids": {
    "application_ids": {}
  }
}

Event as.up.data.receive

receive uplink data message

Event as.up.join.drop

drop join-accept message

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event as.up.join.forward

forward join-accept message

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ApplicationUp",
  "end_device_ids": {
    "application_ids": {}
  }
}

Event as.up.join.receive

receive join-accept message

Event client.collaborator.delete

delete client collaborator

Event client.collaborator.update

update client collaborator

Event client.create

create OAuth client

Event client.delete

delete OAuth client

Event client.update

update OAuth client

Show example of data field
{
  "@type": "type.googleapis.com/google.protobuf.Value",
  "value": [
    "list.of",
    "updated.fields"
  ]
}

Event dcs.end_device.claim.abort

claim end device abort

Event dcs.end_device.claim.fail

claim end device fail

Event dcs.end_device.claim.success

claim end device successful

Event end_device.create

create end device

Event end_device.delete

delete end device

Event end_device.update

update end device

Show example of data field
{
  "@type": "type.googleapis.com/google.protobuf.Value",
  "value": [
    "list.of",
    "updated.fields"
  ]
}

Event gateway.api-key.create

create gateway API key

Event gateway.api-key.delete

delete gateway API key

Event gateway.api-key.update

update gateway API key

Event gateway.collaborator.delete

delete gateway collaborator

Event gateway.collaborator.update

update gateway collaborator

Event gateway.create

create gateway

Event gateway.delete

delete gateway

Event gateway.update

update gateway

Show example of data field
{
  "@type": "type.googleapis.com/google.protobuf.Value",
  "value": [
    "list.of",
    "updated.fields"
  ]
}

Event gs.down.send

send downlink message

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.DownlinkMessage"
}

Event gs.down.tx.fail

transmit downlink message failure

Show example of data field
{
  "@type": "type.googleapis.com/google.protobuf.Value",
  "value": 4
}

Event gs.down.tx.success

transmit downlink message successful

Event gs.gateway.connect

connect gateway

Event gs.gateway.disconnect

disconnect gateway

Event gs.status.drop

drop gateway status

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event gs.status.fail

fail to handle gateway status

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event gs.status.forward

forward gateway status

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.GatewayStatus",
  "boot_time": "0001-01-01T00:00:00Z",
  "time": "0001-01-01T00:00:00Z"
}

Event gs.status.receive

receive gateway status

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.GatewayStatus",
  "boot_time": "0001-01-01T00:00:00Z",
  "time": "0001-01-01T00:00:00Z"
}

Event gs.up.drop

drop uplink message

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event gs.up.fail

fail to handle uplink message

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event gs.up.forward

forward uplink message

Event gs.up.receive

receive uplink message

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.UplinkMessage",
  "received_at": "0001-01-01T00:00:00Z",
  "settings": {
    "data_rate": {}
  }
}

Event invitation.create

create invitation

Event js.end_device.create

create end device

Event js.end_device.delete

delete end device

Event js.end_device.update

update end device

Show example of data field
{
  "@type": "type.googleapis.com/google.protobuf.Value",
  "value": [
    "list.of",
    "updated.fields"
  ]
}

Event js.join.accept

accept join-request

Event js.join.reject

reject join-request

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event ns.application.link.begin

begin application link

Event ns.application.link.end

end application link

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event ns.class.switch.a

switched to class A

Event ns.class.switch.b

switched to class B

Event ns.class.switch.c

switched to class C

Event ns.down.data.schedule.attempt

schedule data downlink for transmission on Gateway Server

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.DownlinkMessage"
}

Event ns.down.data.schedule.fail

failed to schedule data downlink for transmission on Gateway Server

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event ns.down.data.schedule.success

successfully scheduled data downlink for transmission on Gateway Server

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ScheduleDownlinkResponse"
}

Event ns.down.join.schedule.attempt

schedule join-accept for transmission on Gateway Server

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.DownlinkMessage"
}

Event ns.down.join.schedule.fail

failed to schedule join-accept for transmission on Gateway Server

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event ns.down.join.schedule.success

successfully scheduled join-accept for transmission on Gateway Server

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ScheduleDownlinkResponse"
}

Event ns.end_device.create

create end device

Event ns.end_device.delete

delete end device

Event ns.end_device.update

update end device

Show example of data field
{
  "@type": "type.googleapis.com/google.protobuf.Value",
  "value": [
    "list.of",
    "updated.fields"
  ]
}

Event ns.mac.adr_param_setup.answer

ADR parameter setup answer received

Event ns.mac.adr_param_setup.request

ADR parameter setup request enqueued

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.ADRParamSetupReq"
}

Event ns.mac.beacon_freq.answer.accept

beacon frequency change accept received

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.BeaconFreqAns"
}

Event ns.mac.beacon_freq.answer.reject

beacon frequency change rejection received

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.BeaconFreqAns"
}

Event ns.mac.beacon_freq.request

beacon frequency change request enqueued

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.BeaconFreqReq"
}

Event ns.mac.dev_status.answer

device status answer received

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.DevStatusAns"
}

Event ns.mac.dev_status.request

device status request enqueued

Event ns.mac.device_mode.confirmation

device mode confirmation enqueued

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.DeviceModeConf"
}

Event ns.mac.device_mode.indication

device mode indication received

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.DeviceModeInd"
}

Event ns.mac.device_time.answer

device time answer enqueued

Event ns.mac.device_time.request

device time request received

Event ns.mac.dl_channel.answer.accept

downlink Rx1 channel frequency modification accept received

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.DLChannelAns"
}

Event ns.mac.dl_channel.answer.reject

downlink Rx1 channel frequency modification rejection received

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.DLChannelAns"
}

Event ns.mac.dl_channel.request

downlink Rx1 channel frequency modification request enqueued

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.DLChannelReq"
}

Event ns.mac.duty_cycle.answer

maximum aggregated transmit duty-cycle change answer received

Event ns.mac.duty_cycle.request

maximum aggregated transmit duty-cycle change request enqueued

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.DutyCycleReq"
}

Event ns.mac.force_rejoin.request

force rejoin request enqueued

Event ns.mac.link_adr.answer.accept

link ADR accept received

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.LinkADRAns"
}

Event ns.mac.link_adr.answer.reject

link ADR rejection received

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.LinkADRAns"
}

Event ns.mac.link_adr.request

link ADR request enqueued

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.LinkADRReq"
}

Event ns.mac.link_check.answer

link check answer enqueued

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.LinkCheckAns"
}

Event ns.mac.link_check.request

link check request received

Event ns.mac.new_channel.answer.accept

new channel accept received

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.NewChannelAns"
}

Event ns.mac.new_channel.answer.reject

new channel rejection received

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.NewChannelAns"
}

Event ns.mac.new_channel.request

new channel request enqueued

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.NewChannelReq"
}

Event ns.mac.ping_slot_channel.answer.accept

ping slot channel accept received

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.PingSlotChannelAns"
}

Event ns.mac.ping_slot_channel.request

ping slot channel request enqueued

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.PingSlotChannelReq"
}

Event ns.mac.ping_slot_info.answer

ping slot info answer enqueued

Event ns.mac.ping_slot_info.request

ping slot info request received

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.PingSlotInfoReq"
}

Event ns.mac.proprietary.receive

receive proprietary MAC command

Event ns.mac.rejoin_param_setup.answer

rejoin parameter setup answer received

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.RejoinParamSetupAns"
}

Event ns.mac.rejoin_param_setup.request

rejoin parameter setup request enqueued

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.RejoinParamSetupReq"
}

Event ns.mac.rekey.confirmation

device rekey confirmation enqueued

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.RekeyConf"
}

Event ns.mac.rekey.indication

device rekey indication received

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.RekeyInd"
}

Event ns.mac.reset.confirmation

device reset confirmation enqueued

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.ResetConf"
}

Event ns.mac.reset.indication

device reset indication received

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.ResetInd"
}

Event ns.mac.rx_param_setup.answer.accept

Rx parameter setup accept received

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.RxParamSetupAns"
}

Event ns.mac.rx_param_setup.answer.reject

Rx parameter setup rejection received

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.RxParamSetupAns"
}

Event ns.mac.rx_param_setup.request

Rx parameter setup request enqueued

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.RxParamSetupReq"
}

Event ns.mac.rx_timing_setup.answer

Rx timing setup answer received

Event ns.mac.rx_timing_setup.request

Rx timing setup request enqueued

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.RxTimingSetupReq"
}

Event ns.mac.tx_param_setup.answer

Tx parameter setup answer received

Event ns.mac.tx_param_setup.request

Tx parameter setup request enqueued

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.MACCommand.TxParamSetupReq"
}

Event ns.up.data.drop

drop data message

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event ns.up.data.forward

forward data message to Application Server

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ApplicationUp",
  "end_device_ids": {
    "application_ids": {}
  },
  "uplink_message": {
    "received_at": "0001-01-01T00:00:00Z",
    "settings": {
      "data_rate": {}
    }
  }
}

Event ns.up.data.process

successfully processed data message

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.UplinkMessage",
  "received_at": "0001-01-01T00:00:00Z",
  "settings": {
    "data_rate": {}
  }
}

Event ns.up.data.receive

receive data message

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.UplinkMessage",
  "received_at": "0001-01-01T00:00:00Z",
  "settings": {
    "data_rate": {}
  }
}

Event ns.up.join.accept.forward

forward join-accept to Application Server

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ApplicationUp",
  "end_device_ids": {
    "application_ids": {}
  },
  "join_accept": {
    "received_at": "0001-01-01T00:00:00Z"
  }
}

Event ns.up.join.cluster.attempt

send join-request to cluster-local Join Server

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.JoinRequest",
  "dev_addr": "00000000",
  "downlink_settings": {},
  "net_id": "000000"
}

Event ns.up.join.cluster.fail

join-request to cluster-local Join Server failed

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event ns.up.join.cluster.success

join-request to cluster-local Join Server succeeded

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.JoinResponse",
  "session_keys": {}
}

Event ns.up.join.drop

drop join-request

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event ns.up.join.interop.attempt

forward join-request to interoperability Join Server

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.JoinRequest",
  "dev_addr": "00000000",
  "downlink_settings": {},
  "net_id": "000000"
}

Event ns.up.join.interop.fail

join-request to interoperability Join Server failed

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.ErrorDetails",
  "attributes": {
    "attr_name": "attr_value"
  },
  "code": 2,
  "message_format": "example error for `{attr_name}`",
  "name": "example",
  "namespace": "pkg/example"
}

Event ns.up.join.interop.success

join-request to interoperability Join Server succeeded

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.JoinResponse",
  "session_keys": {}
}

Event ns.up.join.process

successfully processed join-request

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.UplinkMessage",
  "received_at": "0001-01-01T00:00:00Z",
  "settings": {
    "data_rate": {}
  }
}

Event ns.up.join.receive

receive join-request

Show example of data field
{
  "@type": "type.googleapis.com/ttn.lorawan.v3.UplinkMessage",
  "received_at": "0001-01-01T00:00:00Z",
  "settings": {
    "data_rate": {}
  }
}

Event oauth.authorize

authorize OAuth client

Event oauth.token.exchange

exchange OAuth access token

Event oauth.user.login

login user successful

Event oauth.user.login_failed

login user failure

Event oauth.user.logout

logout user

Event organization.api-key.create

create organization API key

Event organization.api-key.delete

delete organization API key

Event organization.api-key.update

update organization API key

Event organization.collaborator.delete

delete organization collaborator

Event organization.collaborator.update

update organization collaborator

Event organization.create

create organization

Event organization.delete

delete organization

Event organization.update

update organization

Show example of data field
{
  "@type": "type.googleapis.com/google.protobuf.Value",
  "value": [
    "list.of",
    "updated.fields"
  ]
}

Event user.api-key.create

create user API key

Event user.api-key.delete

delete user API key

Event user.api-key.update

update user API key

Event user.create

create user

Event user.delete

delete user

Event user.update

update user

Show example of data field
{
  "@type": "type.googleapis.com/google.protobuf.Value",
  "value": [
    "list.of",
    "updated.fields"
  ]
}

Event user.update.incorrect_password

update user failure: incorrect password

← End Device Claiming APIs Gateway APIs →

On this page

  • The Events service
  • Messages
  • Events

The Things Stack

Getting Started

Devices

Gateways

Integrations

Reference

Contributing

GitHub

Forum

About Us

The Things Network

The Things Industries

About this page

Last changed by Hylke Visser on 10 Aug 2020.
doc: Add list of defined events

Edit on Github