{"id":13452226,"url":"https://github.com/apis-is/apis","last_synced_at":"2025-05-13T12:51:18.680Z","repository":{"id":5790214,"uuid":"7004433","full_name":"apis-is/apis","owner":"apis-is","description":"Making data readily available to anyone interested","archived":false,"fork":false,"pushed_at":"2022-12-07T23:04:32.000Z","size":7024,"stargazers_count":164,"open_issues_count":31,"forks_count":64,"subscribers_count":21,"default_branch":"master","last_synced_at":"2025-05-05T07:42:40.580Z","etag":null,"topics":["api","data","iceland","javascript","node","public-data"],"latest_commit_sha":null,"homepage":"https://apis.is","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/apis-is.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":".github/CODEOWNERS","security":null,"support":null}},"created_at":"2012-12-04T18:02:42.000Z","updated_at":"2025-01-14T08:34:01.000Z","dependencies_parsed_at":"2023-01-13T13:42:07.592Z","dependency_job_id":null,"html_url":"https://github.com/apis-is/apis","commit_stats":null,"previous_names":["kristjanmik/apis"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apis-is%2Fapis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apis-is%2Fapis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apis-is%2Fapis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apis-is%2Fapis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apis-is","download_url":"https://codeload.github.com/apis-is/apis/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253666256,"owners_count":21944638,"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":["api","data","iceland","javascript","node","public-data"],"created_at":"2024-07-31T07:01:17.504Z","updated_at":"2025-05-13T12:51:18.657Z","avatar_url":"https://github.com/apis-is.png","language":"JavaScript","readme":"# [APIs.is](http://apis.is) - Making data pretty since 2012!\n\n[![Codeship](https://img.shields.io/codeship/7c0ce5a0-9901-0132-893b-365d53813970/master.svg)](https://codeship.com/projects/63542)\n[![Greenkeeper badge](https://badges.greenkeeper.io/apis-is/apis.svg)](https://greenkeeper.io/)\n\nThe purpose of [APIs.is](http://apis.is) is to make data readily available to anyone interested. All data that is delivered through APIs.is is JSON formatted and scraped from open public websites.\n\nThe code that is running the service is open source under the [MIT licence](https://en.wikipedia.org/wiki/MIT_License). The platform itself is hosted on a load balanced setup by [Advania](https://www.advania.com/).\n\n**Don't hesitate to lend a hand - All knowledge and help is much appreciated!**\n\n## Maintainers\n\n[@kristjanmik](https://github.com/kristjanmik/)\n\n[@benediktvaldez](https://github.com/benediktvaldez/)\n\n[@koddsson](https://github.com/koddsson/)\n\n[@MiniGod](https://github.com/minigod/)\n\n## Running locally\n\nTo run the project locally, first clone this repository...\n```sh\n$ git clone https://github.com/apis-is/apis.git\n```\n\n.... install the dependencies and run the project.\n\n```sh\n$ npm install\n[Bunch of output]\n$ npm run\n```\n\n## Tests\n\nTo run the tests:\n```sh\n$ npm test\n```\n\nThe tests utilize a man-in-the-middle library called [nock](https://github.com/node-nock/nock) that\nintercepts requests that the tests made and respond with data from disk. The data was generated using\nthe [record feature](https://github.com/node-nock/nock#recording) and saved in [`mock-data.json`](mock-data.json).\n\nIf a endpoints data source has changed and the we need to re-record this data we can simply set the\nenv variable `RECORD_MOCK_DATA` to a truthy value and run the tests. This will disable nock in the tests\nand make requests to each endpoints data source and save that to disk.\n\n```sh\nRECORD_MOCK_DATA=true npm test\n```\n\nNewly added endpoints should mock the endpoints data source using the `nock` API since this initial\ndata mocking was only made to help migrate to a mocking library. See the [original PR](https://github.com/apis-is/apis/pull/376)\nfor more info.\n\n## Adding a new Endpoint\n\n### Step by Step\n\n1. View current endpoints for structure and hierarchy.\n2. Add a new folder to the `endpoints/` directory with the name of your endpoint.\n3. The file will be loaded automatically. Remember to require the server. Bare minimum example endpoint:\n\n```javascript\nconst app = require('../../server');\n\napp.get('/path', (req,res) =\u003e {\n  //Sends out empty json object\n  return res.json({});\n});\n```\n\n### Additional requirements\n\nAdd integration tests to the endpoint by creating a file called `integration_test.js` inside a `tests/` folder within your endpoint directory. For reference, please take a look at one of the integration tests.\n\nAdd documentation for your endpoint to the `gh-pages` branch of this repo.\n\n### More servers\n\nTo ensure close to zero downtime, the plan is to start up more workers/servers around the world so that projects relying on this service will not be affected. Want to help out with that? Feel free to contact us by opening a [issue](https://github.com/apis-is/apis/issues/new).\n\n### Helpful pointers\n\n- Endpoints can implement any node module, but try to use the ones that are already included in the project.\n- Information on how to handle requests and responses can be found [here](http://expressjs.com/api.html).\n- It is much appreciated that endpoints are thoroughly documented and written with care.\n- Issues are managed by the [GitHub issue tracker](https://github.com/apis-is/apis/issues).\n- Have fun and eat some cake! (preferrably just some plain vanilla cake, but whatever floats your boat)\n","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapis-is%2Fapis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapis-is%2Fapis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapis-is%2Fapis/lists"}