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 Type Description
application_ids ApplicationIdentifiers
client_ids ClientIdentifiers
device_ids EndDeviceIdentifiers
gateway_ids GatewayIdentifiers
organization_ids OrganizationIdentifiers
user_ids 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 Type Description
application_id string

max_len: 36

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

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

Message ClientIdentifiers

Field Type Description
client_id string

max_len: 36

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

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

Message EndDeviceIdentifiers

Field Type Description
device_id string

max_len: 36

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

application_ids ApplicationIdentifiers

required

dev_eui bytes

The LoRaWAN DevEUI.

join_eui bytes

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

dev_addr bytes

The LoRaWAN DevAddr.

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

Message GatewayIdentifiers

Field Type Description
gateway_id string

max_len: 36

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

eui bytes

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

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

Message OrganizationIdentifiers

Field Type Description
organization_id string

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 Type Description
user_id string

This ID shares namespace with organization IDs.

max_len: 36

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

email string

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

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

Message Event

Field Type Description
name string

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

time google.protobuf.Timestamp

Time at which the event was triggered.

required

identifiers repeated EntityIdentifiers

Identifiers of the entity (or entities) involved.

data google.protobuf.Any

Optional data attached to the event.

correlation_ids repeated string

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

max_len: 100

origin string

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

context map of string to bytes

Event context, internal use only.

visibility Rights

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

authentication Event.Authentication

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

remote_ip string

The IP address of the caller that triggered this event.

user_agent string

The IP address of the caller that triggered this event.

unique_id string

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 Description
type string

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

token_type string

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

token_id string

The ID of the token that was used.

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

Message StreamEventsRequest

Field Type Description
identifiers repeated EntityIdentifiers
tail uint32

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.

after google.protobuf.Timestamp

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

link ADR accept received

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

link ADR rejection received

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

link ADR request enqueued

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

link check answer enqueued

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

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