# Pushbullet

> Push notes, links and files to your phone, tablet and browser from a workflow - to every device, to one, to an email address or to a channel - and manage the devices, chats and channel subscriptions on the account.

App · Notifications · 20 actions. Web page: https://docs.lodol.com/docs/integrations/pushbullet

## Actions

### Create chat

Start a chat with a person, by email address - they do not have to be a Pushbullet user. Nothing is sent to them: this only files them on the account, ready for 'Send note' with Send to set to an email address.

**Inputs**

- Email address (`email`, text, required): The person's email address. If a chat with them already exists, Pushbullet returns that one.

**Outputs**

- `chat` (object)

**Example output**

```json
{
  "chat": {
    "active": true,
    "created": 1789000000.0,
    "iden": "ujpah72o0sjAoRtnM0jd",
    "modified": 1789003600.0,
    "muted": false,
    "with": {
      "email": "carmack@gmail.com",
      "email_normalized": "carmack@gmail.com",
      "iden": "ujlxm0aiz2",
      "image_url": "https://static.pushbullet.com/missing-image/85e7a7-85",
      "name": "John Carmack",
      "type": "user"
    }
  }
}
```

### Create device

Create a device on the account. No hardware is involved - a device is just a record - so this is how a workflow gives itself somewhere to push that is not everybody's phone. It shows up in the Pushbullet apps like any other device.

**Inputs**

- Name (`nickname`, text, required): The name the device is shown under, such as 'Nightly runs'.
- Icon (`icon`, text): The icon Pushbullet shows beside the device. One of: `desktop`, `browser`, `website`, `laptop`, `tablet`, `phone`, `watch`, `system`.
- Model (`model`, text): The device's model, if it stands for something real.
- Manufacturer (`manufacturer`, text): The device's manufacturer, if it stands for something real.

**Outputs**

- `device` (object)

**Example output**

```json
{
  "device": {
    "active": true,
    "app_version": 8623,
    "created": 1789000000.0,
    "fingerprint": "",
    "generated_nickname": false,
    "has_sms": "false",
    "icon": "system",
    "iden": "ujpah72o0sjAoRtnM0jc",
    "key_fingerprint": "",
    "manufacturer": "Lodol",
    "model": "Workflow",
    "modified": 1789003600.0,
    "nickname": "Workflow target",
    "push_token": ""
  }
}
```

### Delete chat

Delete one chat. The pushes exchanged with that person stay on the account; only the chat itself goes.

**Inputs**

- Chat (`chat_iden`, text, required): The chat to delete. Pick one, or paste its iden such as 'ujpah72o0sjAoRtnM0jc'.

**Outputs**

- `deleted` (true/false): Always true - Pushbullet answers an empty object
- `iden` (text): The iden of what was deleted
- `resource` (text): What kind of record it was

**Example output**

```json
{
  "deleted": true,
  "iden": "ujpah72o0sjAoRtnM0jd",
  "resource": "chat"
}
```

### Delete device

Delete one device. Pushes already sent to it stay on the account; nothing new can be aimed at it afterwards.

**Inputs**

- Device (`device_iden`, text, required): The device to delete. Pick one, or paste its iden such as 'ujpah72o0sjAoRtnM0jc'.

**Outputs**

- `deleted` (true/false): Always true - Pushbullet answers an empty object
- `iden` (text): The iden of what was deleted
- `resource` (text): What kind of record it was

**Example output**

```json
{
  "deleted": true,
  "iden": "ujpah72o0sjAoRtnM0jc",
  "resource": "device"
}
```

### Delete push

Delete one push. Pushbullet keeps the record with active=false and strips every field but its iden, rather than removing it, so it stops appearing in a list of live pushes.

**Inputs**

- Push iden (`push_iden`, text, required): The push's iden, from the step that sent it or from 'List pushes' - such as 'ujpah72o0sjAoRtnM0jc'.

**Outputs**

- `deleted` (true/false): Always true - Pushbullet answers an empty object
- `iden` (text): The iden of what was deleted
- `resource` (text): What kind of record it was

**Example output**

```json
{
  "deleted": true,
  "iden": "ujpah72o0sjAoRtnM0jc0",
  "resource": "push"
}
```

### Dismiss push

Mark a push as dismissed, which hides its notification everywhere it was shown - or turn the flag off to bring it back. It is the only thing about a push that can be changed.

**Inputs**

- Push iden (`push_iden`, text, required): The push's iden, from the step that sent it or from 'List pushes' - such as 'ujpah72o0sjAoRtnM0jc'.
- Dismissed (`dismissed`, true/false): On to dismiss the push, off to un-dismiss it and let its notification show again. Default: `true`.

**Outputs**

- `dismissed` (true/false): The push's dismissed flag after the change
- `push` (object)

**Example output**

```json
{
  "dismissed": true,
  "push": {
    "active": true,
    "body": "42 invoices were sent.",
    "created": 1789000000.0,
    "direction": "self",
    "dismissed": true,
    "guid": "lodol-run-4f1c",
    "iden": "ujpah72o0sjAoRtnM0jc0",
    "modified": 1789003600.0,
    "receiver_email": "elon@gmail.com",
    "receiver_email_normalized": "elon@gmail.com",
    "receiver_iden": "ujpah72o0",
    "sender_email": "elon@gmail.com",
    "sender_email_normalized": "elon@gmail.com",
    "sender_iden": "ujpah72o0",
    "sender_name": "Elon Musk",
    "target_device_iden": "ujpah72o0sjAoRtnM0jc",
    "title": "Nightly run finished",
    "type": "note"
  }
}
```

### Get channel info

Look up any public channel by its tag - its name, description, image, website, how many people follow it and, unless you turn them off, its most recent pushes. Works for channels this account does not follow.

**Inputs**

- Channel tag (`channel_tag`, text, required): The channel's tag, such as 'xkcd'. A pasted channel address works too.
- Skip recent pushes (`no_recent_pushes`, true/false): On to leave the channel's recent pushes out of the result, which keeps it small when only the channel's details are wanted. Default: `false`.

**Outputs**

- `channel` (object)
- `recent_pushes` (list)
- `subscriber_count` (number): Number of subscribers to the channel

**Example output**

```json
{
  "channel": {
    "description": "Every new xkcd post, pushed right to you.",
    "iden": "ujxPklLhvyKsjxQWuu7bu8",
    "image_url": "https://static.pushbullet.com/channel/0c2a8a392a85d215",
    "name": "xkcd",
    "recent_pushes": [
      {
        "active": true,
        "channel_iden": "ujxPklLhvyKsjxQWuu7bu8",
        "created": 1789000000.0,
        "direction": "incoming",
        "dismissed": false,
        "iden": "ujpah72o0sjAoRtnM0jc9",
        "modified": 1789000000.0,
        "sender_name": "xkcd",
        "title": "Geology Building",
        "type": "link",
        "url": "https://m.xkcd.com/3284/"
      }
    ],
    "subscriber_count": 23404,
    "tag": "xkcd",
    "website_url": "http://xkcd.com/"
  },
  "recent_pushes": [
    {
      "active": true,
      "channel_iden": "ujxPklLhvyKsjxQWuu7bu8",
      "created": 1789000000.0,
      "direction": "incoming",
      "dismissed": false,
      "iden": "ujpah72o0sjAoRtnM0jc9",
      "modified": 1789000000.0,
      "sender_name": "xkcd",
      "title": "Geology Building",
      "type": "link",
      "url": "https://m.xkcd.com/3284/"
    }
  ],
  "subscriber_count": 23404
}
```

### Get current user

Read the Pushbullet account this connection belongs to - its iden, name, email address and the largest file it may upload. Useful as a first step to confirm the token still works.

**Inputs**: None.

**Outputs**

- `email` (text): The account's canonical email address
- `max_upload_size_mb` (number): The upload limit, in megabytes
- `user` (object)

**Example output**

```json
{
  "email": "elon@gmail.com",
  "max_upload_size_mb": 25.0,
  "user": {
    "created": 1381092887.398433,
    "email": "Elon@gmail.com",
    "email_normalized": "elon@gmail.com",
    "iden": "ujpah72o0",
    "image_url": "https://static.pushbullet.com/missing-image/85e7a7-85",
    "max_upload_size": 26214400,
    "modified": 1789003600.0,
    "name": "Elon Musk",
    "referred_count": 3,
    "referrer_iden": ""
  }
}
```

### List channel subscriptions

List the channels this account follows, each with the channel's tag, name and description, whether it is muted, and the subscription's iden.

**Inputs**

- Only live records (`active`, true/false): Leave on to list only live subscriptions. Pushbullet keeps a deleted record with active=false and strips every field but its iden, and lists those too when this is off. Default: `true`.
- How many (`limit`, number): How many subscriptions to return, 1-500. Defaults to 50. From 1 to 500.
- Next page (`cursor`, text): To get the next page of subscriptions, paste 'next_cursor' from the previous result here. Leave blank for the first page.
- Changed after (`modified_after`, date and time): Only subscriptions changed after this moment. Use the most recent 'modified' value from an earlier result rather than the current time, so nothing is missed.

**Outputs**

- `count` (number): How many records this page holds
- `has_more` (true/false): True when another page follows
- `next_cursor` (text): Pass this back as the cursor to read the next page
- `subscriptions` (list)

**Example output**

```json
{
  "count": 1,
  "has_more": false,
  "next_cursor": null,
  "subscriptions": [
    {
      "active": true,
      "channel": {
        "description": "Every new xkcd post, pushed right to you.",
        "iden": "ujxPklLhvyKsjxQWuu7bu8",
        "image_url": "https://static.pushbullet.com/channel/0c2a8a392a85d215",
        "name": "xkcd",
        "subscriber_count": 23404,
        "tag": "xkcd",
        "website_url": "http://xkcd.com/"
      },
      "created": 1789000000.0,
      "iden": "ujpah72o0sjAoRtnM0je",
      "modified": 1789003600.0,
      "muted": false
    }
  ]
}
```

### List chats

List the people this account has chats with, each with the email address behind it, whether it is muted, and its iden.

**Inputs**

- Only live records (`active`, true/false): Leave on to list only live chats. Pushbullet keeps a deleted record with active=false and strips every field but its iden, and lists those too when this is off. Default: `true`.
- How many (`limit`, number): How many chats to return, 1-500. Defaults to 50. From 1 to 500.
- Next page (`cursor`, text): To get the next page of chats, paste 'next_cursor' from the previous result here. Leave blank for the first page.
- Changed after (`modified_after`, date and time): Only chats changed after this moment. Use the most recent 'modified' value from an earlier result rather than the current time, so nothing is missed.

**Outputs**

- `chats` (list)
- `count` (number): How many records this page holds
- `has_more` (true/false): True when another page follows
- `next_cursor` (text): Pass this back as the cursor to read the next page

**Example output**

```json
{
  "chats": [
    {
      "active": true,
      "created": 1789000000.0,
      "iden": "ujpah72o0sjAoRtnM0jd",
      "modified": 1789003600.0,
      "muted": false,
      "with": {
        "email": "carmack@gmail.com",
        "email_normalized": "carmack@gmail.com",
        "iden": "ujlxm0aiz2",
        "image_url": "https://static.pushbullet.com/missing-image/85e7a7-85",
        "name": "John Carmack",
        "type": "user"
      }
    }
  ],
  "count": 1,
  "has_more": false,
  "next_cursor": null
}
```

### List devices

List the devices on the account - every phone, tablet and browser signed in to it, plus any a workflow made - with each one's iden, nickname and icon. A push can be aimed at one of them by iden.

**Inputs**

- Only live records (`active`, true/false): Leave on to list only live devices. Pushbullet keeps a deleted record with active=false and strips every field but its iden, and lists those too when this is off. Default: `true`.
- How many (`limit`, number): How many devices to return, 1-500. Defaults to 50. From 1 to 500.
- Next page (`cursor`, text): To get the next page of devices, paste 'next_cursor' from the previous result here. Leave blank for the first page.
- Changed after (`modified_after`, date and time): Only devices changed after this moment. Use the most recent 'modified' value from an earlier result rather than the current time, so nothing is missed.

**Outputs**

- `count` (number): How many records this page holds
- `devices` (list)
- `has_more` (true/false): True when another page follows
- `next_cursor` (text): Pass this back as the cursor to read the next page

**Example output**

```json
{
  "count": 1,
  "devices": [
    {
      "active": true,
      "app_version": 8623,
      "created": 1789000000.0,
      "fingerprint": "",
      "generated_nickname": false,
      "has_sms": "false",
      "icon": "system",
      "iden": "ujpah72o0sjAoRtnM0jc",
      "key_fingerprint": "",
      "manufacturer": "Lodol",
      "model": "Workflow",
      "modified": 1789003600.0,
      "nickname": "Workflow target",
      "push_token": ""
    }
  ],
  "has_more": false,
  "next_cursor": null
}
```

### List pushes

List the account's pushes, most recently changed first - sent and received, including the ones from channels it follows. 'Changed after' plus the 'modified' value of the newest push is how a workflow polls for new ones; Pushbullet has no webhooks.

**Inputs**

- Only live records (`active`, true/false): Leave on to list only live pushes. Pushbullet keeps a deleted record with active=false and strips every field but its iden, and lists those too when this is off. Default: `true`.
- How many (`limit`, number): How many pushes to return, 1-500. Defaults to 50. From 1 to 500.
- Next page (`cursor`, text): To get the next page of pushes, paste 'next_cursor' from the previous result here. Leave blank for the first page.
- Changed after (`modified_after`, date and time): Only pushes changed after this moment. Use the most recent 'modified' value from an earlier result rather than the current time, so nothing is missed.

**Outputs**

- `count` (number): How many records this page holds
- `has_more` (true/false): True when another page follows
- `next_cursor` (text): Pass this back as the cursor to read the next page
- `pushes` (list)

**Example output**

```json
{
  "count": 2,
  "has_more": false,
  "next_cursor": null,
  "pushes": [
    {
      "active": true,
      "body": "42 invoices were sent.",
      "created": 1789000000.0,
      "direction": "self",
      "dismissed": false,
      "guid": "lodol-run-4f1c",
      "iden": "ujpah72o0sjAoRtnM0jc0",
      "modified": 1789003600.0,
      "receiver_email": "elon@gmail.com",
      "receiver_email_normalized": "elon@gmail.com",
      "receiver_iden": "ujpah72o0",
      "sender_email": "elon@gmail.com",
      "sender_email_normalized": "elon@gmail.com",
      "sender_iden": "ujpah72o0",
      "sender_name": "Elon Musk",
      "target_device_iden": "ujpah72o0sjAoRtnM0jc",
      "title": "Nightly run finished",
      "type": "note"
    },
    {
      "active": true,
      "body": "Numbers for the morning stand-up.",
      "created": 1789000000.0,
      "direction": "self",
      "dismissed": false,
      "guid": "lodol-run-4f1c",
      "iden": "ujpah72o0sjAoRtnM0jc0",
      "modified": 1789003600.0,
      "receiver_email": "elon@gmail.com",
      "receiver_email_normalized": "elon@gmail.com",
      "receiver_iden": "ujpah72o0",
      "sender_email": "elon@gmail.com",
      "sender_email_normalized": "elon@gmail.com",
      "sender_iden": "ujpah72o0",
      "sender_name": "Elon Musk",
      "target_device_iden": "ujpah72o0sjAoRtnM0jc",
      "title": "Today's report",
      "type": "link",
      "url": "https://example.com/reports/today"
    }
  ]
}
```

### Mute or unmute channel

Mute a channel subscription so its pushes arrive without raising a notification, or unmute it again. Muting is the only thing about a subscription that can be changed.

**Inputs**

- Subscription (`subscription_iden`, text, required): The subscription to change - not the channel's tag. Pick one, or paste its iden such as 'ujpah72o0sjAoRtnM0jc'.
- Muted (`muted`, true/false, required): On to mute this channel - its pushes still arrive, but they do not raise a notification. Off to unmute it. Default: `true`.

**Outputs**

- `muted` (true/false): The subscription's muted flag after the change
- `subscription` (object)

**Example output**

```json
{
  "muted": true,
  "subscription": {
    "active": true,
    "channel": {
      "description": "Every new xkcd post, pushed right to you.",
      "iden": "ujxPklLhvyKsjxQWuu7bu8",
      "image_url": "https://static.pushbullet.com/channel/0c2a8a392a85d215",
      "name": "xkcd",
      "subscriber_count": 23404,
      "tag": "xkcd",
      "website_url": "http://xkcd.com/"
    },
    "created": 1789000000.0,
    "iden": "ujpah72o0sjAoRtnM0je",
    "modified": 1789003600.0,
    "muted": true
  }
}
```

### Mute or unmute chat

Mute a chat so its pushes arrive without raising a notification, or unmute it again. Muting is the only thing about a chat that can be changed.

**Inputs**

- Chat (`chat_iden`, text, required): The chat to change. Pick one, or paste its iden such as 'ujpah72o0sjAoRtnM0jc'.
- Muted (`muted`, true/false, required): On to mute this chat - its pushes still arrive, but they do not raise a notification. Off to unmute it. Default: `true`.

**Outputs**

- `chat` (object)
- `muted` (true/false): The chat's muted flag after the change

**Example output**

```json
{
  "chat": {
    "active": true,
    "created": 1789000000.0,
    "iden": "ujpah72o0sjAoRtnM0jd",
    "modified": 1789003600.0,
    "muted": true,
    "with": {
      "email": "carmack@gmail.com",
      "email_normalized": "carmack@gmail.com",
      "iden": "ujlxm0aiz2",
      "image_url": "https://static.pushbullet.com/missing-image/85e7a7-85",
      "name": "John Carmack",
      "type": "user"
    }
  },
  "muted": true
}
```

### Send file

Push a file that is already on the web at a public link - Pushbullet passes the link to whoever gets the push rather than fetching it, so it has to be one they can open. The MIME type is worked out from the file name when it is left blank, and an image arrives with a preview.

**Inputs**

- File link (`file_url`, text, required): A public https link to the file, such as 'https://example.com/files/contract.pdf'.
- File name (`file_name`, text, required): The name the file is shown under, such as 'contract.pdf'.
- MIME type (`file_type`, text): The file's MIME type, such as 'application/pdf'. Leave blank to work it out from the file name.
- Message (`body`, text): A message to go with the file.
- Send to (`target_type`, text): Who gets this push. Pushbullet allows only one target, so this decides which of the fields below is used. 'All of my devices' is every device signed in to the connected account. One of: `all` (All of my devices), `device` (One of my devices), `email` (An email address), `channel` (A channel I own). Default: `all`.
- Device (`device_iden`, text): Used when Send to is 'One of my devices'. Pick a device, or paste its iden such as 'ujpah72o0sjAoRtnM0jc'. A workflow can make one for itself with 'Create device'.
- Email address (`email`, text): Used when Send to is 'An email address'. If that address has a Pushbullet account they get a push; otherwise Pushbullet emails them.
- Channel tag (`channel_tag`, text): Used when Send to is 'A channel I own' - the push then goes to everyone subscribed to it. The tag is the one in the channel's address, https://www.pushbullet.com/channel?tag=xkcd. You have to own the channel.
- Unique id (optional) (`guid`, text): Your own id for this push. Sending a second push with the same id returns the first one instead of pushing again, so a step that is retried does not notify anyone twice.

**Outputs**

- `push` (object)
- `push_iden` (text): The new push's iden, for a later step
- `type` (text): Which kind was sent: "note", "link" or "file"

**Example output**

```json
{
  "push": {
    "active": true,
    "body": "The signed contract.",
    "created": 1789000000.0,
    "direction": "self",
    "dismissed": false,
    "file_name": "contract.pdf",
    "file_type": "application/pdf",
    "file_url": "https://example.com/files/contract.pdf",
    "guid": "lodol-run-4f1c",
    "iden": "ujpah72o0sjAoRtnM0jc0",
    "modified": 1789003600.0,
    "receiver_email": "elon@gmail.com",
    "receiver_email_normalized": "elon@gmail.com",
    "receiver_iden": "ujpah72o0",
    "sender_email": "elon@gmail.com",
    "sender_email_normalized": "elon@gmail.com",
    "sender_iden": "ujpah72o0",
    "sender_name": "Elon Musk",
    "target_device_iden": "ujpah72o0sjAoRtnM0jc",
    "title": null,
    "type": "file"
  },
  "push_iden": "ujpah72o0sjAoRtnM0jc0",
  "type": "file"
}
```

### Send link

Push a link, which opens when the notification is tapped. Takes the same targets as a note: all of your devices, one device, an email address or a channel you own.

**Inputs**

- Link (`url`, text, required): The address to open, such as 'https://example.com/reports/today'.
- Title (`title`, text): The link's title.
- Message (`body`, text): A message to go with the link.
- Send to (`target_type`, text): Who gets this push. Pushbullet allows only one target, so this decides which of the fields below is used. 'All of my devices' is every device signed in to the connected account. One of: `all` (All of my devices), `device` (One of my devices), `email` (An email address), `channel` (A channel I own). Default: `all`.
- Device (`device_iden`, text): Used when Send to is 'One of my devices'. Pick a device, or paste its iden such as 'ujpah72o0sjAoRtnM0jc'. A workflow can make one for itself with 'Create device'.
- Email address (`email`, text): Used when Send to is 'An email address'. If that address has a Pushbullet account they get a push; otherwise Pushbullet emails them.
- Channel tag (`channel_tag`, text): Used when Send to is 'A channel I own' - the push then goes to everyone subscribed to it. The tag is the one in the channel's address, https://www.pushbullet.com/channel?tag=xkcd. You have to own the channel.
- Unique id (optional) (`guid`, text): Your own id for this push. Sending a second push with the same id returns the first one instead of pushing again, so a step that is retried does not notify anyone twice.

**Outputs**

- `push` (object)
- `push_iden` (text): The new push's iden, for a later step
- `type` (text): Which kind was sent: "note", "link" or "file"

**Example output**

```json
{
  "push": {
    "active": true,
    "body": "Numbers for the morning stand-up.",
    "created": 1789000000.0,
    "direction": "self",
    "dismissed": false,
    "guid": "lodol-run-4f1c",
    "iden": "ujpah72o0sjAoRtnM0jc0",
    "modified": 1789003600.0,
    "receiver_email": "elon@gmail.com",
    "receiver_email_normalized": "elon@gmail.com",
    "receiver_iden": "ujpah72o0",
    "sender_email": "elon@gmail.com",
    "sender_email_normalized": "elon@gmail.com",
    "sender_iden": "ujpah72o0",
    "sender_name": "Elon Musk",
    "target_device_iden": "ujpah72o0sjAoRtnM0jc",
    "title": "Today's report",
    "type": "link",
    "url": "https://example.com/reports/today"
  },
  "push_iden": "ujpah72o0sjAoRtnM0jc0",
  "type": "link"
}
```

### Send note

Push a note - a short message with an optional title - to all of your devices, one device, an email address or a channel you own. This is the ordinary 'tell me it finished' push.

**Inputs**

- Message (`body`, text, required): The message to send.
- Title (`title`, text): The push's title, shown in bold above the message.
- Send to (`target_type`, text): Who gets this push. Pushbullet allows only one target, so this decides which of the fields below is used. 'All of my devices' is every device signed in to the connected account. One of: `all` (All of my devices), `device` (One of my devices), `email` (An email address), `channel` (A channel I own). Default: `all`.
- Device (`device_iden`, text): Used when Send to is 'One of my devices'. Pick a device, or paste its iden such as 'ujpah72o0sjAoRtnM0jc'. A workflow can make one for itself with 'Create device'.
- Email address (`email`, text): Used when Send to is 'An email address'. If that address has a Pushbullet account they get a push; otherwise Pushbullet emails them.
- Channel tag (`channel_tag`, text): Used when Send to is 'A channel I own' - the push then goes to everyone subscribed to it. The tag is the one in the channel's address, https://www.pushbullet.com/channel?tag=xkcd. You have to own the channel.
- Unique id (optional) (`guid`, text): Your own id for this push. Sending a second push with the same id returns the first one instead of pushing again, so a step that is retried does not notify anyone twice.

**Outputs**

- `push` (object)
- `push_iden` (text): The new push's iden, for a later step
- `type` (text): Which kind was sent: "note", "link" or "file"

**Example output**

```json
{
  "push": {
    "active": true,
    "body": "42 invoices were sent.",
    "created": 1789000000.0,
    "direction": "self",
    "dismissed": false,
    "guid": "lodol-run-4f1c",
    "iden": "ujpah72o0sjAoRtnM0jc0",
    "modified": 1789003600.0,
    "receiver_email": "elon@gmail.com",
    "receiver_email_normalized": "elon@gmail.com",
    "receiver_iden": "ujpah72o0",
    "sender_email": "elon@gmail.com",
    "sender_email_normalized": "elon@gmail.com",
    "sender_iden": "ujpah72o0",
    "sender_name": "Elon Musk",
    "target_device_iden": "ujpah72o0sjAoRtnM0jc",
    "title": "Nightly run finished",
    "type": "note"
  },
  "push_iden": "ujpah72o0sjAoRtnM0jc0",
  "type": "note"
}
```

### Subscribe to channel

Follow a public channel by its tag, so everything pushed to that channel arrives on this account. The tag is the one in the channel's address, https://www.pushbullet.com/channel?tag=xkcd.

**Inputs**

- Channel tag (`channel_tag`, text, required): The channel's tag, such as 'xkcd'. A pasted channel address works too.

**Outputs**

- `channel_tag` (text): The tag that was subscribed to
- `subscription` (object)

**Example output**

```json
{
  "channel_tag": "xkcd",
  "subscription": {
    "active": true,
    "channel": {
      "description": "Every new xkcd post, pushed right to you.",
      "iden": "ujxPklLhvyKsjxQWuu7bu8",
      "image_url": "https://static.pushbullet.com/channel/0c2a8a392a85d215",
      "name": "xkcd",
      "subscriber_count": 23404,
      "tag": "xkcd",
      "website_url": "http://xkcd.com/"
    },
    "created": 1789000000.0,
    "iden": "ujpah72o0sjAoRtnM0je",
    "modified": 1789003600.0,
    "muted": false
  }
}
```

### Unsubscribe from channel

Stop following a channel. Takes the subscription's iden, which 'List channel subscriptions' gives - not the channel's tag.

**Inputs**

- Subscription (`subscription_iden`, text, required): The subscription to end - not the channel's tag. Pick one, or paste its iden such as 'ujpah72o0sjAoRtnM0jc'.

**Outputs**

- `deleted` (true/false): Always true - Pushbullet answers an empty object
- `iden` (text): The iden of what was deleted
- `resource` (text): What kind of record it was

**Example output**

```json
{
  "deleted": true,
  "iden": "ujpah72o0sjAoRtnM0je",
  "resource": "subscription"
}
```

### Update device

Rename a device or change its icon, model or manufacturer. Only the fields you fill in are sent, so the rest are left alone.

**Inputs**

- Device (`device_iden`, text, required): The device to change. Pick one, or paste its iden such as 'ujpah72o0sjAoRtnM0jc'.
- Name (`nickname`, text): A new name for the device. Leave blank to keep it.
- Icon (`icon`, text): A new icon. Leave blank to keep the current one. One of: `desktop`, `browser`, `website`, `laptop`, `tablet`, `phone`, `watch`, `system`.
- Model (`model`, text): A new model. Leave blank to keep it.
- Manufacturer (`manufacturer`, text): A new manufacturer. Leave blank to keep it.

**Outputs**

- `device` (object)

**Example output**

```json
{
  "device": {
    "active": true,
    "app_version": 8623,
    "created": 1789000000.0,
    "fingerprint": "",
    "generated_nickname": false,
    "has_sms": "false",
    "icon": "system",
    "iden": "ujpah72o0sjAoRtnM0jc",
    "key_fingerprint": "",
    "manufacturer": "Lodol",
    "model": "Workflow",
    "modified": 1789003600.0,
    "nickname": "Nightly runs",
    "push_token": ""
  }
}
```
