{"id":25300304,"url":"https://github.com/ehofesmann/fiftyone_labelbox","last_synced_at":"2026-02-27T01:01:41.289Z","repository":{"id":216889010,"uuid":"738716314","full_name":"ehofesmann/fiftyone_labelbox","owner":"ehofesmann","description":null,"archived":false,"fork":false,"pushed_at":"2025-01-02T16:47:47.000Z","size":65,"stargazers_count":1,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-07T00:18:06.270Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ehofesmann.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-01-03T22:02:06.000Z","updated_at":"2025-01-31T00:39:30.000Z","dependencies_parsed_at":"2024-01-17T19:22:19.054Z","dependency_job_id":"27b0053b-dc62-4554-ae85-0d5b074c1164","html_url":"https://github.com/ehofesmann/fiftyone_labelbox","commit_stats":null,"previous_names":["ehofesmann/fiftyone_labelbox"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ehofesmann/fiftyone_labelbox","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ehofesmann%2Ffiftyone_labelbox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ehofesmann%2Ffiftyone_labelbox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ehofesmann%2Ffiftyone_labelbox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ehofesmann%2Ffiftyone_labelbox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ehofesmann","download_url":"https://codeload.github.com/ehofesmann/fiftyone_labelbox/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ehofesmann%2Ffiftyone_labelbox/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29879896,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-26T23:51:21.483Z","status":"ssl_error","status_checked_at":"2026-02-26T23:50:46.793Z","response_time":89,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":[],"created_at":"2025-02-13T05:48:31.612Z","updated_at":"2026-02-27T01:01:41.265Z","avatar_url":"https://github.com/ehofesmann.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Labelbox Annotation Plugin\n\nA plugin that contains utilities for integrating FiftyOne with the Labelbox annotation integration backend\n[described here](https://docs.voxel51.com/integrations/labelbox.html).\n\n## Installation\n\n### Local Python environment:\n\n```shell\nfiftyone plugins download \\\n    https://github.com/ehofesmann/fiftyone_labelbox\n```\n\nRefer to the [main README](https://github.com/voxel51/fiftyone-plugins) for\nmore information about managing downloaded plugins and developing plugins\nlocally.\n\nSet the `FIFTYONE_LABELBOX_API_KEY=XXXXX` environment variable following [these instructions](https://docs.voxel51.com/integrations/labelbox.html#authentication).\n\n### Install in FiftyOne Teams environment:\n\n1) Download the zip of this repository:\n\n![image](https://github.com/ehofesmann/fiftyone_labelbox/assets/21222883/2adb370b-e52e-4141-b7d0-3e39b502019f)\n\n2) [Install it through your FiftyOne Teams App.](https://docs.voxel51.com/teams/teams_plugins.html#installing-a-plugin)\n\n    (Alternative): Upload it through the [FiftyOne Teams management SDK.](https://docs.voxel51.com/teams/management_sdk.html#fiftyone.management.plugin.upload_plugin)\n\n3) Add the `FIFTYONE_LABELBOX_API_KEY` [secret in your FiftyOne Teams App.](https://docs.voxel51.com/teams/secrets.html)\n\n## Usage\n\nIn the FiftyOne App, press `` ` `` or click the `Browse operations` action to open the Operators list. Select one of the operators mentioned below.\n\nThis plugin can also be used entirely through Python by loading the relevant methods directly from the plugin through `foo.get_operator()`.\n\n\n### Operators\n\n#### request_annotations\n\nYou can use this operator to create annotation tasks for the current dataset or\nview.\n\nThis operator is essentially a wrapper around the\n[request annotations Python workflow](https://docs.voxel51.com/user_guide/annotation.html#requesting-annotations):\n\n```py\nimport fiftyone.operators as foo\nannotate = foo.get_operator(\"@ehofesmann/labelbox/request_annotations\")\nannotate(\n    dataset_or_view,\n    anno_key,\n    label_schema=...,\n    ...\n)\n```\n\nwhere the operator's form allows you to configure the annotation key,\nannotation backend, label schema, and any other applicable fields for your\nannotation backend.\n\n#### load_annotations\n\nYou can use this operator to load annotations for existing runs back onto your\ndataset.\n\nThis operator is essentially a wrapper around the\n[load annotations Python workflow](https://docs.voxel51.com/user_guide/annotation.html#loading-annotations):\n\n```py\nimport fiftyone.operators as foo\nload_annotations = foo.get_operator(\"@ehofesmann/labelbox/load_annotations\")\n\nload_annotations(dataset, anno_key, ...)\n```\n\nwhere the operator's form allows you to configure the annotation key and\nrelated options.\n\n#### delete_annotation_run\n\nYou can use this operator to delete annotation runs.\n\nThis operator is essentially a wrapper around\n[delete_annotation_run()](https://docs.voxel51.com/api/fiftyone.core.collections.html#fiftyone.core.collections.SampleCollection.delete_annotation_run):\n\n```py\nimport fiftyone.operators as foo\ndelete_annotation_run = foo.get_operator(\"@ehofesmann/labelbox/delete_annotation_run\")\n\ndelete_annotation_run(dataset, anno_key, cleanup=True)\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fehofesmann%2Ffiftyone_labelbox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fehofesmann%2Ffiftyone_labelbox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fehofesmann%2Ffiftyone_labelbox/lists"}