generic camera platform allows you to integrate any IP camera or other URL into Home Assistant. Templates can be used to generate the URLs on the fly.
Home Assistant will serve the images via its server, making it possible to view your IP cameras while outside of your network. The endpoint is
To enable this camera in your installation, add the following to your
# Example configuration.yaml entry camera: - platform: generic still_image_url: http://18.104.22.168/jpg/image.jpg
The URL your camera serves the image on, e.g.,
http://192.168.1.21:2112/. Can be a template.
The URL your camera serves the live stream on, e.g.,
rtsp://192.168.1.21:554/. Can be a template.
Type for authenticating the requests
Limits re-fetching of the remote image to when the URL changes. Only relevant if using a template to fetch the remote image.
Set the content type for the IP camera if it is not a jpg file. Use
image/svg+xml to add a dynamic SVG file.
The number of frames-per-second (FPS) of the stream. Can cause heavy traffic on the network and/or heavy load on the camera.
Enable or disable SSL certificate verification. Set to false to use an http-only camera, or you have a self-signed SSL certificate and haven’t installed the CA certificate to enable verification.
In this section, you find some real-life examples of how to use this camera platform.
camera: - platform: generic name: Weather still_image_url: https://www.yr.no/place/Norway/Oslo/Oslo/Oslo/meteogram.svg content_type: "image/svg+xml"
You can show a static image with this platform. Just place the image here:
camera: - platform: generic name: Some Image still_image_url: https://127.0.0.1:8123/local/your_image.png verify_ssl: false
If you are running more than one Home Assistant instance (let’s call them the ‘host’ and ‘receiver’ instances) you may wish to display the camera feed from the host instance on the receiver instance. You can use the REST API to access the camera feed on the host (IP address 127.0.0.5) and display it on the receiver instance by configuring the receiver with the following:
camera: - platform: generic name: Host instance camera feed still_image_url: https://127.0.0.5:8123/api/camera_proxy/camera.live_view
To access a camera which is only available via HTTP, you must turn off SSL verification.
camera: - platform: generic name: Some Image still_image_url: http://example.org/your_image.png verify_ssl: false
To access a camera that has both a snapshot and live stream URL, utilizing the stream component.
camera: - platform: generic name: Streaming Enabled still_image_url: http://22.214.171.124/jpg/image.jpg stream_source: rtsp://126.96.36.199:554
To access a camera that requires secured access for still image or live stream (an HIK in my case).
camera: - platform: generic still_image_url: "http://192.168.1.100/ISAPI/Streaming/Channels/101/picture" stream_source: "rtsp://USERNAME:[email protected]:554/Streaming/Channels/102" name: "My Camera" verify_ssl: false username: "USERNAME" password: "PASSWORD" authentication: digest