Automate SMS notifications and voice calls through your smart home. Get instant alerts for security events, temperature changes, or any Home Assistant trigger.
π³ Pricing: seven.io uses prepaid credits. SMS from β¬0.075, voice calls from β¬0.015 per minute. View full pricing
- Home Assistant 2023.1.0 or newer
- A seven.io account with API key (sign up free)
- Make sure your API key has the
balancescope and the scopes for the services you want to use (sms,voice).
- Make sure your API key has the
- Credits in your seven.io account for sending messages
Clone the repository to the custom_components directory:
cd ~/.homeassistant/custom_components/
git clone https://github.com/seven-io/home-assistant sevenAfter installation, restart Home Assistant.
Via HACS
- Navigate to HACS -> Integrations -> Custom repositories -> Add
- Set Repository to https://github.com/seven-io/home-assistant
- Set Type to Integration
- Confirm form submission and the repository should be appended to the list
- Install the integration through HACS
- Restart Home Assistant
For security, use secrets.yaml to store your API key:
secrets.yaml:
seven_api_key: YOUR_ACTUAL_API_KEY_HEREconfiguration.yaml:
notify:
- platform: seven
sender: HomeAssist # defaults to hass - see https://help.seven.io/en/set-sender-id
name: seven_sms
api_key: !secret seven_api_key # see https://help.seven.io/en/api-key-access
recipient: +491234567890 # or specify multiple numbers e.g. [+491234567890, +449876543210]
- platform: seven
sender: +491234567890 # - see https://help.seven.io/en/shared-numbers
name: seven_voice
api_key: !secret seven_api_key # see https://help.seven.io/en/api-key-access
recipient: [+491234567890, +449876543210]
type: 'voice'See the visual guide for GUI configuration.
You can also make a minimal configuration to configuration.yaml where all the remaining necessary configuration will be made in the automation:
notify:
- platform: seven
name: seven_sms
api_key: !secret seven_api_key| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
platform |
string | Yes | - | Must be seven |
name |
string | Yes | - | Service name (e.g., seven_sms) |
api_key |
string | Yes | - | Your seven.io API key |
sender |
string | No | hass |
Sender ID (11 chars alphanumeric or valid phone number) |
recipient |
string/list | No | - | Default recipient(s) |
type |
string | No | sms |
Message type: sms or voice |
service: notify.seven_sms
data:
data:
sender: HomeAssist
message: '{{ states("sensor.temperature") }}Β°C'
target: +491234567890- Go to Developer Tools β Services
- Select
notify.seven_sms(or your configured service name) - Enter a test message and click Call Service
For detailed testing steps, see Home Assistant's notify testing guide.
alias: Door Open Alert
trigger:
- platform: state
entity_id: binary_sensor.front_door
to: 'on'
action:
- service: notify.seven_sms
data:
message: "Front door opened at {{ now().strftime('%H:%M') }}"
target: +491234567890alias: High Temperature Alert
trigger:
- platform: numeric_state
entity_id: sensor.living_room_temperature
above: 30
action:
- service: notify.seven_sms
data:
message: "Warning: Temperature is {{ states('sensor.living_room_temperature') }}Β°C"π‘ Tip: For frequent alerts, change the automation mode from single to parallel to handle multiple triggers simultaneously.
- Standard SMS: 160 characters for Latin alphabet
- Unicode SMS: 70 characters when using special characters or emojis
- Long messages: Automatically split into multiple SMS (concatenated)
- Messages longer than 160 characters will be billed as multiple SMS
Use the SMS Character Counter to calculate message length and parts before sending.
To troubleshoot issues, check the Home Assistant logs:
- Enable debug logging in
configuration.yaml:
logger:
default: info
logs:
custom_components.seven: debug-
Restart Home Assistant and check logs at Settings β System β Logs
-
Common issues:
- Authentication failed: Check your API key
- Message not sent: Verify you have credits in your seven.io account
- Invalid recipient: Ensure phone numbers include country code (e.g., +49 for Germany)
- Navigate to HACS β Integrations
- Find the seven integration
- Click the three dots menu β Uninstall
- Restart Home Assistant
- Remove the integration from
configuration.yaml - Delete the folder
~/.homeassistant/custom_components/seven - Restart Home Assistant
- β All API communications use HTTPS encryption
- β API keys are never logged or exposed in the UI
- β
Store credentials in
secrets.yaml(never inconfiguration.yamldirectly)
- π Documentation: seven.io Docs
- π¬ Support: Contact seven.io
- π Issues: GitHub Issues
- π§ Email: support@seven.io