---
title: "✨ List workspace projects"
method: GET
path: "/api/workspaces/{id}/projects/"
tags: ["Workspaces"]
---

# ✨ List workspace projects

`GET /api/workspaces/{id}/projects/`

<Card href="https://humansignal.com/goenterprise">
        <img style="pointer-events: none; margin-left: 0px; margin-right: 0px;" src="https://docs.humansignal.com/images/badge.svg" alt="Label Studio Enterprise badge"/>
        <p style="margin-top: 10px; font-size: 14px;">
            This endpoint is not available in Label Studio Community Edition. [Learn more about Label Studio Enterprise](https://humansignal.com/goenterprise)
        </p>
    </Card>
Retrieve a list of all projects in a specific workspace.

## Path parameters

- `id` integer, required

## Response `200`

Projects list

- Project[]
  - `annotator_evaluation_enabled` boolean — Enable annotator evaluation for the project
  - `color` string, nullable
  - `config_has_control_tags` boolean, required — Flag to detect is project ready for labeling
  - `config_suitable_for_bulk_annotation` boolean, required — Flag to detect is project ready for bulk annotation
  - `control_weights` object, nullable — Dict of weights for each control tag in metric calculation. Keys are control tag names from the labeling config. At least one tag must have a non-zero overall weight.
  - `created_at` string, date-time, required
  - `created_by` UserSimple — A ModelSerializer that takes additional arguments for "fields", "omit" and "expand" in order to control which fields are displayed, and whether to replace simple values with complex, nested serializations
    - `avatar` string, nullable, required
    - `email` string, email
    - `first_name` string
    - `id` integer, required
    - `last_name` string
    - `username` string, required
  - `description` string, nullable — Project description
  - `enable_empty_annotation` boolean — Allow annotators to submit empty annotations
  - `evaluate_predictions_automatically` boolean — Retrieve and display predictions when loading a task
  - `expert_instruction` string, nullable — Labeling instructions in HTML format
  - `finished_task_number` integer, required — Finished tasks
  - `ground_truth_number` integer, required — Honeypot annotation number in project
  - `id` integer, required
  - `is_draft` boolean — Whether or not the project is in the middle of being created
  - `is_published` boolean — Whether or not the project is published to annotators
  - `label_config` string, nullable — Label config in XML format. See more about it in documentation
  - `maximum_annotations` integer — Maximum number of annotations for one task. If the number of annotations per task is equal or greater to this value, the task is completed (is_labeled=True)
  - `min_annotations_to_start_training` integer — Minimum number of completed tasks after which model training is started
  - `model_version` string, nullable — Machine learning model version
  - `num_tasks_with_annotations` integer, required — Tasks with annotations count
  - `organization` integer, nullable
  - `overlap_cohort_percentage` integer
  - `parsed_label_config` object, required — JSON-formatted labeling configuration
  - `pinned_at` string, date-time, nullable — Pinned date and time
  - `queue_done` integer, required
  - `queue_total` integer, required
  - `reveal_preannotations_interactively` boolean — Reveal pre-annotations interactively
  - `sampling` 'Sequential sampling' | 'Uniform sampling' | 'Uncertainty sampling' — * `Sequential sampling` - Tasks are ordered by Data manager ordering * `Uniform sampling` - Tasks are chosen randomly * `Uncertainty sampling` - Tasks are chosen according to model uncertainty scores (active learning mode)
  - `show_annotation_history` boolean — Show annotation history to annotator
  - `show_collab_predictions` boolean — If set, the annotator can view model predictions
  - `show_ground_truth_first` boolean — Onboarding mode (true): show ground truth tasks first in the labeling stream
  - `show_instruction` boolean — Show instructions to the annotator before they start
  - `show_overlap_first` boolean
  - `show_skip_button` boolean — Show a skip button in interface and allow annotators to skip the task
  - `skip_queue` 'REQUEUE_FOR_ME' | 'REQUEUE_FOR_OTHERS' | 'IGNORE_SKIPPED' — * `REQUEUE_FOR_ME` - Requeue for me * `REQUEUE_FOR_OTHERS` - Requeue for others * `IGNORE_SKIPPED` - Ignore skipped
  - `skipped_annotations_number` integer, required — Skipped by collaborators annotation number in project
  - `start_training_on_annotation_update` boolean, required — Start model training after any annotations are submitted or updated
  - `state` string, required
  - `task_data_login` string, nullable — Task data credentials: login
  - `task_data_password` string, nullable — Task data credentials: password
  - `task_number` integer, required — Total task number in project
  - `title` string, nullable — Project name. Must be between 3 and 50 characters long.
  - `total_annotations_number` integer, required — Total annotations number in project including skipped_annotations_number and ground_truth_number.
  - `total_predictions_number` integer, required — Total predictions number in project including skipped_annotations_number, ground_truth_number, and useful_annotation_number.
  - `useful_annotation_number` integer, required — Useful annotation number in project not including skipped_annotations_number and ground_truth_number. Total annotations = annotation_number + skipped_annotations_number + ground_truth_number

---

[API](https://skmtc.net/humansignal/apis/label-studio-api.md) · [All operations](https://skmtc.net/humansignal/apis/label-studio-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/humansignal/label-studio-api/versions/1b113b8df950/schema)
