Skip to content
Leadtime
English
Esc
↑↓navigate↵open⌘Jpreview

Get project component item details

Returns complete details of a component item from a project component tree including all test cases, todos, questions, conditions, and nested children.

What are Component Items? Items are the building blocks within components that structure the project work. Each item can be one of four types:

  • Epic: Major sections or phases that group related work packages around a common theme (e.g., “Technical Implementation”, “Design & Development”). Epics help track project progress at a strategic level.
  • Work Package: Self-contained, clearly defined tasks that deliver tangible results (e.g., “Set up hosting”, “Design homepage”). Work packages can have timeframes, questions, todos, and test cases attached.
  • Todo List: Checklists of sub-steps or checkpoints perfect for recurring processes, quality control, or project preparation (e.g., “Kickoff Checklist”, “Quality Control”). Each todo item can be checked off individually.
  • Test Suite: Formal acceptance tests for project results (e.g., “Contact Form Tests”, “SEO Review”). Contains multiple test cases with steps and expected results. The project is considered finished when all test cases pass.

Attached Resources: Each item can have various resources attached:

  • Questions: Capture customer-specific requirements or project details in a structured way (e.g., “Do you need e-commerce functionality?”). Answers can automatically affect effort calculation and pricing.
  • Todos: Checklist items within a Work Package or Todo List. Each todo can be checked off individually, supports comments, and tracks completion status with timestamps.
  • Test Cases: Individual test steps within a Test Suite. Each test case has steps, expected results, and can be evaluated as Passed, Failed, or PassedWithReservations.
  • Conditions: Rules that control when items are visible or active based on answers, todo completion, or test case status.

Response Format: All ProseMirror editor content (description, internalNote, question descriptions, test case steps, etc.) is automatically converted to HTML format. The response includes the complete item structure with all nested children, making it easy to display the full item hierarchy.

Access Control: Only project component items that belong to components in the specified project (component.projectId equals projectId) are accessible through this endpoint.

GET/projects/{projectId}/components/item-details/{id}
Authorization
AuthorizationOAuth2 access token · headerrequired
Scopes:api:read
or
AuthorizationBearer token (JWT) · headerrequired
Path parameters
projectIdstringrequired

Project UUID

idstringrequired

Component item UUID

Responses
200
childrenComponentChildrenShortItemDto[]required

Nested children items

Show properties
Array of ComponentChildrenShortItemDto
childrenComponentChildrenShortItemDto[]required

Nested children items

Show properties
Array of ComponentChildrenShortItemDto
Circular reference to ComponentChildrenShortItemDto.
conditionsValidbooleanrequired

Whether all conditions are valid

entityUniqueIdstringrequired

Entity unique ID

iconstring | nullrequired

Icon identifier in the format :icon_name: (e.g., :rocket:, :check:, :star:). Can be null if no icon is set.

idstringrequired

Unique identifier

namestringrequired

Name of the item

questionsCountnumberrequired

Count of questions

taskIdstring | nullrequired

Task ID if linked to a task

taskShortNumbernumber | nullrequired

Task short number if linked to a task

testCasesCountnumberrequired

Count of test cases

todosCountnumberrequired

Count of todo items

typestringrequired

Type of the component item. Items are the building blocks within components:

  • Epic: Groups related work packages around a common theme
  • WorkPackage: Self-contained task that delivers a tangible result
  • TodoList: Checklist of sub-steps or checkpoints
  • TestSuite: Formal acceptance tests with test cases
Allowed:EpicWorkPackageTodoListTestSuite
componentIdstringrequired

Parent component ID

conditionsComponentItemConditionDto[]required

Conditions for this item

Show properties
Array of ComponentItemConditionDto
containsTypestringrequired

Contains type

Allowed:SomeAll
idstring | null

Condition ID (optional)

targetQuestionIdstring | null

Target question ID (optional)

targetTestCaseIdstring | null

Target test case ID (optional)

targetTodoIdstring | null

Target todo ID (optional)

targetValuestring | null

Target value (optional)

typestringrequired

Condition type

Allowed:QuestionAnsweredQuestionNotAnsweredQuestionAnswerContainsQuestionAnswerDoesNotContainQuestionAnswerEqualQuestionAnswerDoesNotEqualTodoIsDoneTodoIsNotDoneTestCasePassedTestCaseFailed
conditionsValidbooleanrequired

Whether all conditions are valid

descriptionstringrequired

Item description in HTML format

entityUniqueIdstringrequired

Entity unique ID

failedConditionsIdsstring[]required

Array of failed condition IDs

iconstring | nullrequired

Icon identifier in the format :icon_name: (e.g., :rocket:, :check:, :star:). Can be null if no icon is set.

idstringrequired

Item ID

includeInSpecificationbooleanrequired

Whether to include in specification

internalNotestringrequired

Internal note in HTML format

namestringrequired

Item name

parentIdstring | nullrequired

Parent item ID (nullable for top-level items)

questionsComponentQuestionDto[]required

Questions associated with this item. Questions capture customer requirements and can affect effort calculation. In library components, questions are defined but not answered.

Show properties
Array of ComponentQuestionDto
answeredAtstring | null

Date when answered (optional)

answeredBystring | null

User ID who answered (optional)

descriptionstringrequired

Question description in HTML format

editorAnswerstring | null

Editor answer in HTML format (optional)

idstringrequired

Question ID

isAnsweredbooleanrequired

Whether the question has been answered

optionsComponentQuestionOptionDto[]required

Available options

Show properties
Array of ComponentQuestionOptionDto
extraHoursnumber | null

Extra hours for this option (optional)

idstringrequired

Option ID

isSelectedboolean | null

Whether this option is selected (optional)

titlestringrequired

Option title

questionstringrequired

Question text

titlestringrequired

Question title

typestringrequired

Question type

Allowed:ShortTextEditorCheckboxRadioFilesDatepickerMultiplierPerson
tagsstring[]required

Array of tags

taskIdobject | nullrequired

Task ID if linked to a task

taskShortNumberobject | nullrequired

Task short number if linked to a task

testCasesComponentTestCaseDto[]required

Test cases associated with this item. Test cases are individual test steps within a Test Suite that document formal review and approval criteria.

Show properties
Array of ComponentTestCaseDto
descriptionstringrequired

Test case description in HTML format

expectedResultstringrequired

Expected result in HTML format

idstringrequired

Test case ID

stepsstringrequired

Test steps in HTML format

testCommentstring | null

Test comment in HTML format (optional)

testStatusstring | null

Test status (optional)

Allowed:PassedPassedWithReservationsFailed
testedAtstring | null

Date when tested (optional)

testedBystring | null

User ID who tested (optional)

titlestringrequired

Test case title

timeFramenumberrequired

Time frame in hours

todoItemsComponentTodoItemDto[]required

Todo items associated with this item. Todos are checklist items that can be checked off individually and support comments.

Show properties
Array of ComponentTodoItemDto
descriptionstringrequired

Todo item description in HTML format

doneByobject | nullrequired

User ID who marked as done (nullable)

doneUpdatedAtobject | nullrequired

Date when marked as done (nullable)

idstringrequired

Todo item ID

isDonebooleanrequired

Whether the todo is marked as done

titlestringrequired

Todo item title. Todos are checklist items used to track actionable tasks within component items. They are perfect for recurring processes, quality control checkpoints, and project preparation steps.

todoCommentobject | nullrequired

Todo comment in HTML format (nullable)

typestringrequired

Item type

Allowed:EpicWorkPackageTodoListTestSuite
400

Invalid projectId or id UUID format

401

Unauthorized - Invalid or missing authentication token

403

Insufficient permissions to view component item details or access to project denied

404

Component item not found, is deleted, or does not belong to the specified project

Try it
Server
Authorization
Parameters
Request
curl -X GET "https://leadtime.app/api/public/projects/550e8400-e29b-41d4-a716-446655440000/components/item-details/3047983b-d798-4aff-8dd4-628cf1900703" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
Response
{
  "children": [
    {
      "children": [
        {}
      ],
      "conditionsValid": true,
      "entityUniqueId": "unique-id-123",
      "icon": ":check:",
      "id": "550e8400-e29b-41d4-a716-446655440001",
      "name": "Login Feature",
      "questionsCount": 2,
      "taskId": "550e8400-e29b-41d4-a716-446655440002",
      "taskShortNumber": 123,
      "testCasesCount": 3,
      "todosCount": 5,
      "type": "Epic"
    }
  ],
  "componentId": "550e8400-e29b-41d4-a716-446655440000",
  "conditions": [
    {
      "containsType": "Some",
      "id": "550e8400-e29b-41d4-a716-446655440013",
      "targetQuestionId": "550e8400-e29b-41d4-a716-446655440014",
      "targetTestCaseId": "550e8400-e29b-41d4-a716-446655440016",
      "targetTodoId": "550e8400-e29b-41d4-a716-446655440015",
      "targetValue": "option-value",
      "type": "QuestionAnswered"
    }
  ],
  "conditionsValid": true,
  "description": "<p>Feature for user authentication.</p>",
  "entityUniqueId": "unique-id-123",
  "failedConditionsIds": [],
  "icon": ":check:",
  "id": "550e8400-e29b-41d4-a716-446655440001",
  "includeInSpecification": true,
  "internalNote": "<p>Implementation notes.</p>",
  "name": "Login Feature",
  "parentId": null,
  "questions": [
    {
      "answeredAt": "2024-01-01T00:00:00.000Z",
      "answeredBy": "550e8400-e29b-41d4-a716-446655440020",
      "description": "<p>Select all security features that apply.</p>",
      "editorAnswer": "<p>Two-factor authentication is required.</p>",
      "id": "550e8400-e29b-41d4-a716-446655440017",
      "isAnswered": true,
      "options": [
        {
          "extraHours": 8,
          "id": "550e8400-e29b-41d4-a716-446655440012",
          "isSelected": true,
          "title": "Two-factor authentication"
        }
      ],
      "question": "Which security features should be implemented?",
      "title": "Security Features",
      "type": "Checkbox"
    }
  ],
  "tags": [
    "authentication",
    "login"
  ],
  "taskId": "550e8400-e29b-41d4-a716-446655440002",
  "taskShortNumber": 123,
  "testCases": [
    {
      "description": "<p>Verify that users can log in with valid credentials.</p>",
      "expectedResult": "<p>User is successfully logged in and redirected to dashboard.</p>",
      "id": "550e8400-e29b-41d4-a716-446655440010",
      "steps": "<ol><li>Navigate to login page</li><li>Enter credentials</li><li>Click login button</li></ol>",
      "testComment": "<p>Test passed successfully.</p>",
      "testStatus": "Passed",
      "testedAt": "2024-01-01T00:00:00.000Z",
      "testedBy": "550e8400-e29b-41d4-a716-446655440020",
      "title": "Test login with valid credentials"
    }
  ],
  "timeFrame": 40,
  "todoItems": [
    {
      "description": "<p>Add password reset functionality to the authentication module.</p>",
      "doneBy": "550e8400-e29b-41d4-a716-446655440020",
      "doneUpdatedAt": "2024-01-01T00:00:00.000Z",
      "id": "550e8400-e29b-41d4-a716-446655440011",
      "isDone": false,
      "title": "Implement password reset",
      "todoComment": "<p>Completed ahead of schedule.</p>"
    }
  ],
  "type": "Epic"
}