{"id":13799418,"url":"https://github.com/b4dnewz/node-censys","last_synced_at":"2025-08-13T21:36:48.109Z","repository":{"id":57195881,"uuid":"117985540","full_name":"b4dnewz/node-censys","owner":"b4dnewz","description":"A unofficial node wrapper for the Censys.io API.","archived":false,"fork":false,"pushed_at":"2020-09-10T20:15:17.000Z","size":995,"stargazers_count":4,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-03T19:49:28.912Z","etag":null,"topics":["censys","censys-api","censys-client","information-gathering","javascript-client","javascript-wrapper","node-client","osint"],"latest_commit_sha":null,"homepage":"https://censys.io/api","language":"TypeScript","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/b4dnewz.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":"2018-01-18T13:20:21.000Z","updated_at":"2022-05-18T07:28:53.000Z","dependencies_parsed_at":"2022-09-16T12:21:00.731Z","dependency_job_id":null,"html_url":"https://github.com/b4dnewz/node-censys","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/b4dnewz/node-censys","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/b4dnewz%2Fnode-censys","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/b4dnewz%2Fnode-censys/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/b4dnewz%2Fnode-censys/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/b4dnewz%2Fnode-censys/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/b4dnewz","download_url":"https://codeload.github.com/b4dnewz/node-censys/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/b4dnewz%2Fnode-censys/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270321884,"owners_count":24564630,"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","status":"online","status_checked_at":"2025-08-13T02:00:09.904Z","response_time":66,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["censys","censys-api","censys-client","information-gathering","javascript-client","javascript-wrapper","node-client","osint"],"created_at":"2024-08-04T00:01:02.532Z","updated_at":"2025-08-13T21:36:48.093Z","avatar_url":"https://github.com/b4dnewz.png","language":"TypeScript","funding_links":[],"categories":["OSINT"],"sub_categories":["Exposed"],"readme":"# node-censys\n\n\u003e An unofficial javascript wrapper for Censys.io API\n\n[![NPM version][npm-image]][npm-url] [![Build Status][travis-image]][travis-url] [![Dependency Status][daviddm-image]][daviddm-url] [![Coverage percentage][coveralls-image]][coveralls-url]\n\nIf you are interested to see the official documentation visit the [Censys.io](https://censys.io/api) API page.\n\n## Installation\n\nInstall it locally to your project to use it as a node module:\n\n```\nnpm install censys.io\n```\n\nOr globally to use it as a cli tool:\n\n```\nnpm install --global censys.io\n```\n\nThan you should have __censys__ command available on your path, try it out with the _--help_  menu.\n\n```\n$ censys --help\n```\n\nOn the command line tool you can specify the API id and secret as an option before the commands or you can setup environment variables called __CENSYS_ID__ and __CENSYS_SECRET__ that will be used by default.\n\n\n## Usage\n\nThe censys client is promise based and must be instanciated with the API __id__ and __secret__ obtained from the Censys website, like the example below.\n\n```js\nimport Censys from 'censys.io'\n\nconst instance = new Censys({\n  apiID: '\u003cyour-api-id\u003e',\n  apiSecret: '\u003cyour-api-secret\u003e'\n})\n\nconst data = await instance.search('certificates', {\n  query: '80.http.get.headers.server: nginx'\n})\n```\n\nThis project is __typescript__ based and provides the module definitions for a better experience.\n\n## Methods\n\n#### [search](https://censys.io/api/v1/docs/search)\n\nThe search endpoint allows searches against the current data in the IPv4, Top Million Websites, and Certificates indexes using the same search syntax as the primary site. The endpoint returns a paginated result set of hosts (or websites or certificates) that match the search. Data should be posted as a JSON request document.\n\n```js\nconst data = await censys.search('ipv4', {\n  query: '8.8.8.8'\n});\nconsole.log(data);\n```\n\n#### [view](https://censys.io/api/v1/docs/view)\n\nThe view endpoint fetches the structured data we have about a specific host, website, or certificate once you know the host's IP address, website's domain, or certificate's SHA-256 fingerprint.\nreport\n\n```js\nconst data = await censys.view('websites', 'google.com');\nconsole.log(data);\n```\n\n#### [report](https://censys.io/api/v1/docs/report)\n\nThe report endpoint allows you to determine the aggregate breakdown of a value for the results a query, similar to the \"Build Report\" functionality available in the primary search interface. For example, if you wanted to determine the breakdown of cipher suites selected by all websites in the Top Million.\n\n```js\nconst data = censys.report('ipv4', {\n  query: '80.http.get.headers.server: nginx',\n  field: 'location.country_code'\n});\nconsole.log(data);\n```\n\n#### [data](https://censys.io/api/v1/docs/data)\n\nThe Get Series endpoint returns a data on the types of scans we regularly perform (\"series\").\n\n```js\nconst data = await censys.data();\nconsole.log(data);\n```\n\n#### [account](https://censys.io/api/v1/docs/account)\n\nThe account endpoint returns information about your Censys account.\n\n```js\nconst data = await censys.account();\nconsole.log(data);\n```\n\n---\n\n## License\n\nMIT © [Filippo Conti](https://b4dnewz.github.io/)\n\n\n[npm-image]: https://badge.fury.io/js/censys.io.svg\n[npm-url]: https://npmjs.org/package/censys.io\n[travis-image]: https://travis-ci.org/b4dnewz/node-censys.svg?branch=master\n[travis-url]: https://travis-ci.org/b4dnewz/node-censys\n[daviddm-image]: https://david-dm.org/b4dnewz/node-censys.svg?theme=shields.io\n[daviddm-url]: https://david-dm.org/b4dnewz/node-censys\n[coveralls-image]: https://coveralls.io/repos/b4dnewz/node-censys/badge.svg\n[coveralls-url]: https://coveralls.io/r/b4dnewz/node-censys\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fb4dnewz%2Fnode-censys","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fb4dnewz%2Fnode-censys","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fb4dnewz%2Fnode-censys/lists"}