{"id":24639421,"url":"https://github.com/netboxlabs/diode-netbox-plugin","last_synced_at":"2025-08-02T01:41:33.537Z","repository":{"id":249313269,"uuid":"819530117","full_name":"netboxlabs/diode-netbox-plugin","owner":"netboxlabs","description":"Official NetBox Labs plugin for NetBox for Diode","archived":false,"fork":false,"pushed_at":"2025-07-31T12:20:47.000Z","size":507,"stargazers_count":52,"open_issues_count":7,"forks_count":12,"subscribers_count":4,"default_branch":"develop","last_synced_at":"2025-07-31T16:12:57.655Z","etag":null,"topics":["ingestion","netbox","netbox-plugin"],"latest_commit_sha":null,"homepage":"https://netboxlabs.com","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/netboxlabs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-06-24T17:33:30.000Z","updated_at":"2025-07-31T12:20:50.000Z","dependencies_parsed_at":"2024-07-20T01:32:12.991Z","dependency_job_id":"fe708b80-1296-4001-974c-69be3d521e44","html_url":"https://github.com/netboxlabs/diode-netbox-plugin","commit_stats":null,"previous_names":["netboxlabs/diode-netbox-plugin"],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/netboxlabs/diode-netbox-plugin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netboxlabs%2Fdiode-netbox-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netboxlabs%2Fdiode-netbox-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netboxlabs%2Fdiode-netbox-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netboxlabs%2Fdiode-netbox-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/netboxlabs","download_url":"https://codeload.github.com/netboxlabs/diode-netbox-plugin/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netboxlabs%2Fdiode-netbox-plugin/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268326453,"owners_count":24232478,"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-01T02:00:08.611Z","response_time":67,"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":["ingestion","netbox","netbox-plugin"],"created_at":"2025-01-25T11:11:29.817Z","updated_at":"2025-08-02T01:41:33.515Z","avatar_url":"https://github.com/netboxlabs.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Diode NetBox Plugin\n\nThe Diode NetBox plugin is a [NetBox](https://netboxlabs.com/oss/netbox/) plugin. It is a required component of\nthe [Diode](https://github.com/netboxlabs/diode) ingestion service.\n\nDiode is a NetBox ingestion service that greatly simplifies and enhances the process to add and update network data\nin NetBox, ensuring your network source of truth is always accurate and can be trusted to power your network automation\npipelines.\n\nMore information about Diode can be found\nat [https://netboxlabs.com/blog/introducing-diode-streamlining-data-ingestion-in-netbox/](https://netboxlabs.com/blog/introducing-diode-streamlining-data-ingestion-in-netbox/).\n\n## Compatibility\n\n| NetBox Version | Plugin Version |\n|:--------------:|:--------------:|\n|    \u003e= 3.7.2    |     0.1.0      |\n|    \u003e= 4.1.0    |     0.4.0      |\n|    \u003e= 4.2.3    |     1.0.0      |\n|    \u003e= 4.2.3    |     1.1.0      |\n|    \u003e= 4.2.3    |     1.2.0      |\n\n## Installation\n\nSource the NetBox Python virtual environment:\n\n```shell\ncd /opt/netbox\nsource venv/bin/activate\n```\n\nInstall the plugin:\n\n```bash\npip install netboxlabs-diode-netbox-plugin\n```\n\nIn your NetBox `configuration.py` file, add `netbox_diode_plugin` to the `PLUGINS` list.\n\n```python\nPLUGINS = [\n    \"netbox_diode_plugin\",\n]\n```\n\nAlso in your `configuration.py` file, in order to customise the plugin settings, add `netbox_diode_plugin`to the\n`PLUGINS_CONFIG` dictionary, e.g.:\n\n```python\nPLUGINS_CONFIG = {\n    \"netbox_diode_plugin\": {\n        # Diode gRPC target for communication with Diode server\n        \"diode_target_override\": \"grpc://localhost:8080/diode\",\n\n        # Username associated with changes applied via plugin\n        \"diode_username\": \"diode\",\n\n        # netbox-to-diode client_secret created during diode bootstrap.\n        \"netbox_to_diode_client_secret\": \"...\"\n    },\n}\n```\n\nIf you are running diode locally via the quickstart, the `netbox-to-diode` client_secret may be found in `/path/to/diode/oauth2/client/client-credentials.json`. eg:\n```\necho $(jq -r '.[] | select(.client_id == \"netbox-to-diode\") | .client_secret' /path/to/diode/oauth2/client/client-credentials.json)\n```\n\nNote: Once you customise usernames with PLUGINS_CONFIG during first installation, you should not change or remove them\nlater on. Doing so will cause the plugin to stop working properly.\n\nRestart NetBox services to load the plugin:\n\n```\nsudo systemctl restart netbox netbox-rq\n```\n\nSee [NetBox Documentation](https://netboxlabs.com/docs/netbox/en/stable/plugins/#installing-plugins) for details.\n\n## Configuration\n\nSource the NetBox Python virtual environment (if not already):\n\n```shell\ncd /opt/netbox\nsource venv/bin/activate\n```\n\nRun migrations to create all necessary resources:\n\n```shell\ncd /opt/netbox/netbox\n./manage.py migrate netbox_diode_plugin\n```\n\n## Running Tests\n\n```shell\nmake docker-compose-netbox-plugin-test\n```\n\n## Generating Documentation\nGenerates documentation on how diode entities are matched. The generated documentation is output to [here](./docs/matching-criteria-documentation.md).\n```shell\nmake docker-compose-generate-matching-docs\n```\n\n## License\n\nDistributed under the NetBox Limited Use License 1.0. See [LICENSE.md](./LICENSE.md) for more information.\n\n## Required Notice\n\nCopyright NetBox Labs, Inc.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnetboxlabs%2Fdiode-netbox-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnetboxlabs%2Fdiode-netbox-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnetboxlabs%2Fdiode-netbox-plugin/lists"}