Get component library item details
Returns full details of a component library item including all test cases, todos, questions, conditions, and nested children.
What are Component Items? Items are the building blocks within components. Each item can be:
- Epic: Major section or phase (e.g., “Technical Implementation”, “Design & Development”)
- Work Package: Specific task with deliverables (e.g., “Set up hosting”, “Design homepage”)
- Todo List: Checklist of actionable items (e.g., “Kickoff Checklist”, “Quality Control”)
- Test Suite: Acceptance tests for formal approval (e.g., “Contact Form Tests”, “SEO Review”)
Attached Resources:
- Questions: Capture customer requirements (defined but not answered in library)
- Todos: Checklist items within a Work Package or Todo List
- Test Cases: Individual test steps within a Test Suite
All ProseMirror editor content is converted to HTML format. Only library component items (component.projectId is null) are accessible through this endpoint.
GET
/administration/project-components/item-details/{id}Authorization
AuthorizationOAuth2 access token · headerrequiredScopes:
api:reador
AuthorizationBearer token (JWT) · headerrequiredPath parameters
idstringrequiredComponent item UUID
Responses
200
childrenComponentChildrenShortItemDto[]requiredNested children items
Show propertiesHide properties
Array of
ComponentChildrenShortItemDtochildrenComponentChildrenShortItemDto[]requiredNested children items
Show propertiesHide properties
Array of
ComponentChildrenShortItemDtoCircular reference to
ComponentChildrenShortItemDto.conditionsValidbooleanrequiredWhether all conditions are valid
entityUniqueIdstringrequiredEntity unique ID
iconobject | nullrequiredIcon identifier in the format `:icon_name:` (e.g., `:rocket:`, `:check:`, `:star:`). Can be null if no icon is set.
idstringrequiredUnique identifier
namestringrequiredName of the item
questionsCountnumberrequiredCount of questions
taskIdobject | nullrequiredTask ID if linked to a task
taskShortNumberobject | nullrequiredTask short number if linked to a task
testCasesCountnumberrequiredCount of test cases
todosCountnumberrequiredCount of todo items
typestringrequiredType 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:
EpicWorkPackageTodoListTestSuitecomponentIdstringrequiredParent component ID
conditionsComponentItemConditionDto[]requiredConditions for this item
Show propertiesHide properties
Array of
ComponentItemConditionDtocontainsTypestringrequiredContains type
Allowed:
SomeAllidstring | nullCondition ID (optional)
targetQuestionIdstring | nullTarget question ID (optional)
targetTestCaseIdstring | nullTarget test case ID (optional)
targetTodoIdstring | nullTarget todo ID (optional)
targetValuestring | nullTarget value (optional)
typestringrequiredCondition type
Allowed:
QuestionAnsweredQuestionNotAnsweredQuestionAnswerContainsQuestionAnswerDoesNotContainQuestionAnswerEqualQuestionAnswerDoesNotEqualTodoIsDoneTodoIsNotDoneTestCasePassedTestCaseFailedconditionsValidbooleanrequiredWhether all conditions are valid
descriptionstringrequiredItem description in HTML format
entityUniqueIdstringrequiredEntity unique ID
failedConditionsIdsstring[]requiredArray of failed condition IDs
iconobject | nullrequiredIcon identifier in the format `:icon_name:` (e.g., `:rocket:`, `:check:`, `:star:`). Can be null if no icon is set.
idstringrequiredItem ID
includeInSpecificationbooleanrequiredWhether to include in specification
internalNotestringrequiredInternal note in HTML format
namestringrequiredItem name
parentIdobject | nullrequiredParent item ID (nullable for top-level items)
questionsComponentQuestionDto[]requiredQuestions associated with this item. Questions capture customer requirements and can affect effort calculation. In library components, questions are defined but not answered.
Show propertiesHide properties
Array of
ComponentQuestionDtoansweredAtstring | nullDate when answered (optional)
answeredBystring | nullUser ID who answered (optional)
descriptionstringrequiredQuestion description in HTML format
editorAnswerstring | nullEditor answer in HTML format (optional)
idstringrequiredQuestion ID
isAnsweredbooleanrequiredWhether the question has been answered
optionsComponentQuestionOptionDto[]requiredAvailable options
Show propertiesHide properties
Array of
ComponentQuestionOptionDtoextraHoursnumber | nullExtra hours for this option (optional)
idstringrequiredOption ID
isSelectedboolean | nullWhether this option is selected (optional)
titlestringrequiredOption title
questionstringrequiredQuestion text
titlestringrequiredQuestion title
typestringrequiredQuestion type
Allowed:
ShortTextEditorCheckboxRadioFilesDatepickerMultiplierPersontagsstring[]requiredArray of tags
taskIdobject | nullrequiredTask ID if linked to a task
taskShortNumberobject | nullrequiredTask short number if linked to a task
testCasesComponentTestCaseDto[]requiredTest cases associated with this item. Test cases are individual test steps within a Test Suite that document formal review and approval criteria.
Show propertiesHide properties
Array of
ComponentTestCaseDtodescriptionstringrequiredTest case description in HTML format
expectedResultstringrequiredExpected result in HTML format
idstringrequiredTest case ID
stepsstringrequiredTest steps in HTML format
testCommentstring | nullTest comment in HTML format (optional)
testStatusstring | nullTest status (optional)
Allowed:
PassedPassedWithReservationsFailedtestedAtstring | nullDate when tested (optional)
testedBystring | nullUser ID who tested (optional)
titlestringrequiredTest case title
timeFramenumberrequiredTime frame in hours
todoItemsComponentTodoItemDto[]requiredTodo items associated with this item. Todos are checklist items that can be checked off individually and support comments.
Show propertiesHide properties
Array of
ComponentTodoItemDtodescriptionstringrequiredTodo item description in HTML format
doneByobject | nullrequiredUser ID who marked as done (nullable)
doneUpdatedAtobject | nullrequiredDate when marked as done (nullable)
idstringrequiredTodo item ID
isDonebooleanrequiredWhether the todo is marked as done
titlestringrequiredTodo 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 | nullrequiredTodo comment in HTML format (nullable)
typestringrequiredItem type
Allowed:
EpicWorkPackageTodoListTestSuite401Unauthorized - Invalid or missing authentication token
403Forbidden - Insufficient API scopes or permissions
Request
curl -X GET "https://leadtime.app/api/public/administration/project-components/item-details/3047983b-d798-4aff-8dd4-628cf1900703" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"const response = await fetch("https://leadtime.app/api/public/administration/project-components/item-details/3047983b-d798-4aff-8dd4-628cf1900703", {
method: "GET",
headers: {
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
});import requests
response = requests.get(
"https://leadtime.app/api/public/administration/project-components/item-details/3047983b-d798-4aff-8dd4-628cf1900703",
headers={
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
},
)Response
{
"children": [
{
"children": [
null
],
"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"
}Unauthorized - Invalid or missing authentication token
Forbidden - Insufficient API scopes or permissions