Skip to content

Navigation Menu

Sign in
Sign up

Latest commit

History

72 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

BlinkMonitorProtocol

Unofficial documentation for the Client API of the Blink Wire-Free HD Home Monitoring & Alert System. I am not affiliated with the company in any way - this documentation is strictly "AS-IS".

The Client API is a straightforward REST API using JSON and HTTPS.

When APIs no longer appear in the current versions of the mobile Apps, we assume they are deprecated and mark them as such in this doc.

When Blink obsoletes an API, they do not remove it, but return the message "An app update is required". This presumably triggers logic in the mobile clients to users that they must update to a more current version of the client to restore functionality.

PR's welcome!

Overview

  • Initial server URL - https://rest-prod.immedia-semi.com
    • see Login for notes on possible redirection to a locale specific server after login.
  • Auth Token - Authentication is done by passing a TOKEN_AUTH header. The auth token is provided in the response to a successful login.
  • Account - An account corresponds to a single set of login credentials. The Account ID is returned in a successful login response.
  • Client - A unique client/app to the account. A single account may have many client apps. Clients that the Blink servers believe are new will generate an out-of-band PIN OTP workflow. The Client ID is returned in a successful login response.
  • Network - A single account may have many networks. A network corresponds conceptually to a Blink Synch module. An account could have multiple networks/synch modules - e.g. multiple sites/homes. Network and Synch Module information associated with an account is returned in the homescreen call.
  • Camera - A network (synch module) may have one or more cameras. Camera information is returned in the homescreen call.
  • Command - Some operations reach out from the Blink Servers to your local Blink module. These operations are asynchronous and return a Command ID to be polled for completion via the Command Status call.

Authentication

  • Login : POST /api/v5/account/login
  • Logout : POST /api/v4/account/{AccountID}/client/{clientID}/logout
  • Verify Pin : POST /api/v4/account/{AccountID}/client/{ClientID}/pin/verify

System

Network

  • Command Status : GET /network/{NetworkID}/command/{CommandID}
  • Arm System : POST /api/v1/accounts/{AccountID}/networks/{NetworkID}/state/arm
  • Disarm System : POST api/v1/accounts/{AccountID}/networks/{NetworkID}/state/disarm
  • List Schedules : GET /api/v1/networks/{NetworkID}/programs
  • Enable Schedule : POST /api/v1/networks/{NetworkID}/programs/{ProgramID}/enable
  • Disable Schedule : POST /api/v1/networks/{NetworkID}/programs/{ProgramID}/disable
  • Update Schedule : POST /api/v1/networks/{NetworkID}/programs/{ProgramID/update
  • (削除) List Networks (obsolete): GET /networks (削除ここまで)
  • (削除) List Synch Modules (obsolete) GET /network/{NetworkID}/syncmodules (削除ここまで)

Cameras

  • Enable Motion Detection : POST /network/{NetworkID}/camera/{CameraID}/enable
  • Disable Motion Detection : POST /network/{NetworkID}/camera/{CameraID}/disable
  • Get Current Thumbnail : GET /media/production/account/{AccountID}/network/{NetworkID}/camera/{CameraID}/{JPEG_File_Name}.jpg
  • Create New Thumbnail : POST /network/{NetworkID}/camera/{CameraID}/thumbnail
  • Liveview : POST /api/v5/accounts/{AccountID}/networks/{NetworkID}/cameras/{CameraID}/liveview
  • Record Video Clip from Camera : POST /network/{NetworkID}/camera/{CameraID}/clip
  • Snooze Camera : POST /api/v1/accounts/{AccountID}/networks/{NetworkID}/cameras/{CameraID}/snooze
  • Get Camera Config : GET /network/{NetworkID}/camera/{CameraID}/config
  • Update Camera Config : POST /network/{NetworkID}/camera/{CameraID}/update
  • (削除) Get Camera List (obsolete - replaced by HomeScreen) - GET /network/{NetworkID}/cameras (削除ここまで)
  • Get Camera Info (deprecated? - replaced by HomeScreen) - GET /network/{NetworkID}/camera/{CameraID}
  • Get Camera Sensor Info (deprecated? - replaced by HomeScreen) - GET /network/{NetworkID}/camera/{CameraID}/signals

Videos

  • Get Video Events : GET /api/v1/accounts/{AccountID}/media/changed?since={timestamp}&page={PageNumber}
  • Get Video : GET /api/v2/accounts/{AccountID}/media/clip/{mp4_Filename}
  • Get Video Thumbnail : GET /api/v2/accounts/{AccountID}/media/thumb/{jpg_filename}
  • Set Video Options : POST /api/v1/account/video_options
  • Delete Videos : POST /api/v1/accounts/{AccountID}/media/delete
  • (削除) Get Network events (obsolete replaced by Get Video Events) - GET /events/network/{NetworkID} (削除ここまで)
  • (削除) Get Video Count (obsolete) - GET /api/v2/videos/count (削除ここまで)
  • (削除) Get Video Info by Page (obsolete) - GET /api/v2/videos/page/{PageNumber} (削除ここまで)
  • (削除) Get Video by ID (obsolete) - GET /api/v2/video/{VideoID} (削除ここまで)
  • (削除) Get Unwatched Videos (obsolete) - GET /api/v2/videos/unwatched (削除ここまで)
  • (削除) Delete a Video (obsolete) - POST /api/v2/video/{VideoID}/delete (削除ここまで)

Misc

  • App Version Check : GET /api/v1/version
  • Get Regions : GET /regions?locale={Two Character Country Locale}
  • Upload Logs : POST /app/logs/upload
  • Account Options : GET /api/v1/account/options
  • System Health (deprecated?) : GET /health
  • (削除) Clients (obsolete) : GET /account/clients (削除ここまで)

Implementations

About

Unofficial documentation for the Blink Wire-Free HD Home Monitoring & Alert System

Resources

Stars

528 stars

Watchers

50 watching

Forks

Releases

Packages

Used by

Contributors

Languages

AltStyle によって変換されたページ (->オリジナル) /