Skip to content

Releases: Labelbox/labelbox-python

v7.17.0

Choose a tag to compare

@Gabefire Gabefire released this 22 Oct 18:08
026cc36

Version 7.17.0 (2026-10-22)

Added

  • Add Project.clear_queue_reservations(), which clears every reservation in one task queue of a project, the same as Clear all reservations on the Queue tab. Holders lose their rows and any unsaved work on them; no labels are deleted and no data rows are moved. Returns the number of reservations cleared (#2087, #2090)
  • Add UserGroup.add_members(), UserGroup.remove_members() and UserGroup.list_members(), which change or read a group's members without replacing the whole group the way update() does (#2091)
  • Add UserGroup.audit_events() and UserGroup.get_audit_events(), which read who added or removed group members and attached or detached projects, for one group or every group you can manage (#2091)
  • Add UserGroupAuditEvent, UserGroupAuditEventType, UserGroupAuditActorKind and UserGroupAuditChannel (#2091)

Changed

  • LabelVersion.annotation_count is documented to count annotations as the editor and exports do: each top-level object and classification, with answers and nested classifications counted as part of their parent (#2089)

v7.16.0

Choose a tag to compare

@mnoszczak mnoszczak released this 20 Oct 10:22
3519710

Version 7.16.0 (2026-10-20)

Added

  • Add Project.label_versions(), Label.versions() and Client.get_label_version(), which read a label's recorded versions: one per hand-off (submit, save, review approve or reject, rework), with who made it, when, at which workflow step, and the annotations at that moment. Versions are recorded once label version history is enabled for the project (#2086)
  • Add LabelVersion, LabelVersionAction and LabelVersionStage (#2086)
  • Add Organization.invite_users(), which invites many people at once, workspace-wide or to projects and user groups, and returns one result per address. One bad address doesn't stop the others, and sending the same list again is safe (#2085)
  • Add InviteResult and InviteMemberStatus (#2085)

Fixed

  • Serializing a raster mask to NDJSON no longer fails with Pillow 13 ("Invalid mode for data type") (#2086)

v7.15.0

Choose a tag to compare

@manuaero manuaero released this 16 Oct 19:32
94204c0

Version 7.15.0 (2026-10-16)

Added

  • Add Client.get_sign_in_sessions() and Client.get_sign_in_events(), which return the sign-in history of your organization's members: each sign-in session with how and when it ended, and a feed of sign-ins and sign-outs for incremental pulls. A session with no recorded end is reported as ended when its maximum length ran out, which is not when the member stopped working (#2083)
  • Add SignInSession, SignInEvent, SignInSessionStatus, SignInStartKind, SignInEndReason, SignInEventType, PerformanceCursorRows and SignInEventRows (#2083)

v7.14.0

Choose a tag to compare

@manuaero manuaero released this 14 Oct 19:05
c2562ec

Version 7.14.0 (2026-10-14)

Added

  • Add user_group_ids and member_organization_ids to Client.get_workspace_performance_metric() and Client.get_workspace_labeler_performance(), to report on the members of user groups or of other organizations, such as workforce providers, across the workspace (#2081)
  • Add member_organization_id and member_organization_name to the rows of Project.get_labeler_performance(), Project.get_reviewer_performance(), and Client.get_workspace_labeler_performance(), and member_organization_ids and user_group_ids to PerformanceMetricSeries (#2081)

Changed

  • Iterating a performance table raises PerformanceTableChangedError when a page's total differs from the first page's, so that a table that changed while it was read no longer comes back looking complete. Read it again from the start. A change that leaves total the same is not detected (#2081)

v7.13.0

Choose a tag to compare

@manuaero manuaero released this 12 Oct 06:48
27115f1

Version 7.13.0 (2026-10-12)

Added

  • Add performance report methods that return the numbers behind a project's Performance dashboard and the workspace Monitor: Client.get_performance_metrics(), Client.get_workspace_performance_metric(), Client.get_workspace_labeler_performance(), Project.get_performance_metric(), Project.get_labeler_performance(), Project.get_reviewer_performance(), and Project.get_performance_report_download() (#2078)
  • Add allowed_ip_cidrs to Client.create_api_key() and ApiKey.create_api_key() to restrict an API key to a list of IP addresses or CIDR ranges, and expose ApiKey.allowed_ip_cidrs (#2077)

Changed

  • Client.is_feature_schema_archived() now includes the HTTP status and response body in the error it raises when the archived status cannot be read (#2079)

v7.12.0

Choose a tag to compare

@mrobers1982 mrobers1982 released this 25 Aug 16:11
c55242e

Version 7.12.0 (2026-08-25)

Fixed

  • Route embedding metadata operations (Client.create_embedding(), Client.get_embeddings(), Client.get_embedding_by_id(), Embedding.delete()) through GraphQL so they work with opaque lbx_ API keys instead of raising JSONDecodeError (#2074)

v7.11.0

Choose a tag to compare

@pawelkozik-labelbox pawelkozik-labelbox released this 28 Jul 13:14
c8ac7fb

Added

  • Add User.last_login_at to expose GraphQL lastLoginAt (nullable datetime of last session in the organization) (#2070)

v7.10.0

Choose a tag to compare

@mrobers1982 mrobers1982 released this 24 Jul 13:53
bd46a49

Version 7.10.0 (2026-07-22)

Added

  • Add Tool.Type.MARKER for video marker tool ontologies — fetching an ontology containing a marker tool no longer raises ValueError (#2067)

Removed

  • Remove LLM prompt/response and response-creation project support: Client.create_prompt_response_generation_project(), Client.create_response_creation_project(), MediaType.LLMPromptCreation, MediaType.LLMPromptResponseCreation, OntologyKind.ResponseCreation, EditorTaskType.ResponseCreation, and Project.is_prompt_response() (#2063)

Fixed

  • Fix Foundry app lookups to raise ResourceNotFoundError for apps that do not exist, instead of a generic LabelboxError (#2065)

v7.9.0

Choose a tag to compare

@mrobers1982 mrobers1982 released this 13 Jul 14:09
cf28762

Version 7.9.0 (2026-07-09)

Added

  • Add optional batch_ids parameter to Project.get_overview() to return workflow state counts scoped to one or more batches (#2060)

v7.8.0

Choose a tag to compare

@mrobers1982 mrobers1982 released this 15 Jun 14:23
16c79d7

Version 7.8.0 (2026-06-11)

Added

  • Add ModelRun.total_cost and ModelRun.total_data_rows properties to retrieve inference cost and data row count for a model run (#2057)
  • Add ModelRun.refresh_cost_and_usage() to re-fetch live cost and usage data (#2057)