{"id":22085188,"url":"https://github.com/madshall/node-blink-security","last_synced_at":"2025-06-29T15:35:46.376Z","repository":{"id":55951123,"uuid":"85365072","full_name":"madshall/node-blink-security","owner":"madshall","description":"This is an npm module for communicating with Blink Home Security System","archived":false,"fork":false,"pushed_at":"2021-06-12T12:04:14.000Z","size":191,"stargazers_count":90,"open_issues_count":10,"forks_count":33,"subscribers_count":14,"default_branch":"master","last_synced_at":"2025-06-03T18:59:48.557Z","etag":null,"topics":["blink","camera","nodejs","npm","security","system"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/madshall.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-03-18T00:22:08.000Z","updated_at":"2025-05-23T07:06:32.000Z","dependencies_parsed_at":"2022-08-15T10:10:36.419Z","dependency_job_id":null,"html_url":"https://github.com/madshall/node-blink-security","commit_stats":null,"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"purl":"pkg:github/madshall/node-blink-security","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/madshall%2Fnode-blink-security","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/madshall%2Fnode-blink-security/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/madshall%2Fnode-blink-security/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/madshall%2Fnode-blink-security/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/madshall","download_url":"https://codeload.github.com/madshall/node-blink-security/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/madshall%2Fnode-blink-security/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262620129,"owners_count":23338418,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blink","camera","nodejs","npm","security","system"],"created_at":"2024-12-01T01:12:18.110Z","updated_at":"2025-06-29T15:35:46.319Z","avatar_url":"https://github.com/madshall.png","language":"JavaScript","funding_links":["https://www.paypal.com/cgi-bin/webscr?cmd=_donations\u0026business=U4M9U63LEHZGJ\u0026lc=US\u0026item_name=Thank%20you\u0026currency_code=USD"],"categories":[],"sub_categories":[],"readme":"![Build Status](https://img.shields.io/travis/madshall/node-blink-security.svg)\n![Downloads](https://img.shields.io/npm/dm/.svg)\n![Downloads](https://img.shields.io/npm/dt/node-blink-security.svg)\n![npm version](https://img.shields.io/npm/v/node-blink-security.svg)\n![dependencies](https://img.shields.io/david/madshall/node-blink-security.svg)\n![dev dependencies](https://img.shields.io/david/dev/madshall/node-blink-security.svg)\n![License](https://img.shields.io/npm/l/node-blink-security.svg)\n\n# node-blink-security\nThis is a Node.js version of [this python library](https://github.com/fronzbot/blinkpy). It allows to communicate with Blink Home Security System from a Node.js application.\n  \n# Installation\n```\nnpm install node-blink-security\n```\n\n# Usage\n\n```javascript\nconst Blink = require('node-blink-security');\n\nvar blink = new Blink('YOUR_EMAIL', 'YOUR_PASSWORD', 'DEVICE_ID');\nblink.setupSystem()\n  .then(() =\u003e {\n    blink.setArmed()\n      .then(() =\u003e {\n        // see the object dump for details\n        console.log(blink);\n      });\n  }, (error) =\u003e {\n    console.log(error);\n  });\n```\n\n# API\n\n```javascript\nclass Blink\n```\n\n## Constructor\n* `email` - your Blink account email\n* `password` - your Blink account password\n* `deviceId` - identifies your device and registers it in your account. It's required since version 4.0.0 of this package as this is when Blink switched to 2-factor authentication flow. The value is provided by you and it should let you identify the device correctly when you receive a verification email from Blink.\n* `options`\n* * `auth_2FA: false` - set to `true` if you want to receive verification code for each login, otherwise you'll receive verification email only once for the first time and after that the device will be remembered by Blink.\n* * `verification_timeout: 60000` - number of milliseconds to wait for email verification until retrying account login\n* * `device_name: \"node-blink-security\"` - this name appears in verification email along with your `deviceId`\n\n## Properties\n\n* `blink.cameras` - the information about all available cameras\n* `blink.idTable` - `{cameraId:cameraName}` map for further references\n* `blink.networks` - map of configured networks (sync modules)\n* `blink.accountId` - account id\n* `blink.region` - region (e.g. `prod`)\n* `blink.regionId` - region (e.g. `United States`)\n\n## Methods\n\n* `blink.refresh` - get all blink cameras and pulls their most recent status\n* `blink.getSummary` - get a full summary of system information, broken down by sync module\n* `blink.getCameraThumbs` - refresh all cameras thumbnails\n* `blink.getVideos(page, Date)` - get metadata for X (per page is unknown) videos recorded since `Date`. Paginate with `page` parameter\n* `blink.getEvents` - get all events from Blink server (e.g. heartbeats, motion...), by sync module\n* `blink.isOnline` - return boolean system online status, by sync module\n* `blink.getLastMotions` - refresh motion events data\n* `blink.isArmed()` - return boolean statuses of all sync modules: armed(true)/disarmed(false).\n* `blink.setArmed(boolean, [networkIds])` - arm/disarm the system/specific set of sync modules; `true` by default\n* `blink.getCameras` - find and creates cameras; used for internal purposes\n* `blink.getLinks` - set access links and required headers for each camera in system; used for internal purposes\n* `blink.setupSystem([system name or id])` - logs in and sets auth token, urls, and ids for future requests. Specify a system identifier if you have more than one system setup.\n* `blink.getIDs` - set the network IDs and Account ID; used for internal purpose\n* `blink.getClients` - get information about devices that have connected to the system\n\n```javascript\nclass BlinkCamera\n```\n\n## Properties\n\n* `blinkCamera.id` - camera id\n* `blinkCamera.name` - camera name\n* `blinkCamera.region_id` - region id\n* `blinkCamera.armed` - camera arm status\n* `blinkCamera.clip` - current clip\n* `blinkCamera.thumbnail` - current thumbnail\n* `blinkCamera.temperature` - camera temperature\n* `blinkCamera.battery` - battery level\n* `blinkCamera.notifications` - number of notifications\n* `blinkCamera.image_link` - image link\n* `blinkCamera.arm_link` - link to arm camera\n* `blinkCamera.header` - request header\n* `blinkCamera.motion` - last motion event detail\n* `blinkCamera.updated_at` - last device update date\n* `blinkCamera.network_id` - camera's assigned sync module id (network id)\n\n## Methods\n\n* `blinkCamera.snapPicture` - take a picture with camera to create a new thumbnail\n* `blinkCamera.setMotionDetect(boolean)` - set motion detection\n* `blinkCamera.update` - update camera information; internal use\n* `blinkCamera.imageRefresh` - refresh current thumbnail\n* `blinkCamera.fetchImageData` - get the image data for the camera's current thumbnail\n* `blinkCamera.recordClip` - record video clip from the camera\n\n# License \nMIT\n\n# This is awesome!\nIf you find this package helpful you can buy me a beer [![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_donations\u0026business=U4M9U63LEHZGJ\u0026lc=US\u0026item_name=Thank%20you\u0026currency_code=USD)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmadshall%2Fnode-blink-security","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmadshall%2Fnode-blink-security","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmadshall%2Fnode-blink-security/lists"}