Get packages

The Get packages action queries the 17Track API and returns the latest data for your tracked packages. You can limit the result to packages in specific states, such as packages that are in transit or ready to be picked up.

This is handy when you want to use up-to-date package information in an automation or a script, for example to send yourself a notification listing everything that is out for delivery today.

Using this action from the user interface

If you prefer building automations and scripts visually, Home Assistant walks you through this action step by step. You pick what to target, tweak a few options, and save. No YAML knowledge required.

To get package data from an automation or a script:

  1. Go to Settings > Automations & scenes.
  2. Open an existing automation or script, or select Create automation > Create new automation.
  3. If you’re setting up a new automation, add a trigger in the When section. Scripts don’t need a trigger. They run when something else calls them.
  4. In the Then do section, select Add action.
  5. From the search box, search for and select 17TRACK: Get packages.
  6. Select the 17Track service to query, and optionally choose which Package states to return.
  7. In the Response variable field, enter a name to store the data in, such as result.
  8. Select Save.```

This action does not support targets. In the UI, you select the 17Track service through the 17Track service field instead of choosing an area, device, entity, or label.

Options in the UI

17Track service (Required)

The 17Track service to retrieve packages for.

Package states (Optional)

Only return packages in the selected states. Returns all packages when left empty.

Using this action in YAML

If you work directly in YAML, or you want to know exactly what Home Assistant does under the hood, this section has the technical reference. It lists the field names you use in YAML, their types, and which ones are required.

In YAML, refer to this action as seventeentrack.get_packages. A basic example looks like this:

ActionActions are used in several places in Home Assistant. As part of a script or automation, actions define what is going to happen once a trigger is activated. In scripts, an action is called *sequence*. [Learn more]
action: seventeentrack.get_packages
data:
  config_entry_id: 2b4be47a1fa7c3764f14cf756dc98991
  package_state:
    - delivered
    - in_transit
response_variable: result

This returns the matching packages in the result response variable, under result.packages.

Options in YAML

config_entry_id string Required

The ID of the 17Track service config entry to retrieve packages for.

package_state list

Only return packages in the listed states. Returns all packages when omitted. One or more of not_found, in_transit, expired, ready_to_be_picked_up, undelivered, delivered, or alert.

Response data

The action returns a packages list. Each entry describes a package with the following fields:

  • tracking_number: The tracking number of the package.
  • friendly_name: The friendly name you gave the package.
  • status: The current status of the package.
  • info_text: A short description of the latest tracking event.
  • location: The last known location of the package.
  • timestamp: The time of the latest tracking event, in ISO 8601 format. Only present when 17Track reports a time.
  • origin_country: The country the package is shipped from.
  • destination_country: The destination country of the package.
  • package_type: The type of package.
  • tracking_info_language: The language of the tracking information.

Try it yourself

Ready to test this? Open Developer tools > Actions, search for this action, fill in the fields, and select Perform action. You see what happens on your actual entitiesAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] without writing a line of YAML.

Still stuck?

The Home Assistant community is quick to help: join Discord for real-time chat, post on the community forum with the action you’re calling and what you expected to happen, or share on our subreddit /r/homeassistant.

Tip

AI assistants like ChatGPT or Claude can also explain actions or suggest the right one when you describe what you want in plain language.

Related actions

These actions work well alongside this one: