Skip to main content

Roadmap API

Roadmap API

import { CodeBoltClient } from '@codebolt/clientsdk';

const client = new CodeBoltClient();

Quick Reference

MethodDescription
createFeatureCreates a new feature within a specific phase.
createIdeaCreates a new idea in the roadmap idea pool.
createPhaseCreates a new roadmap phase.
createTaskFromFeatureCreates a task from a roadmap feature.
deleteFeatureDeletes a feature from the roadmap.
deleteIdeaDeletes an idea from the roadmap idea pool.
deletePhaseDeletes a roadmap phase.
getRetrieves the full roadmap with all phases.
getFeatureRetrieves a specific feature by its ID.
getFeaturesRetrieves all features across all roadmap phases.
getIdeaRetrieves a specific idea by its ID.
getIdeasRetrieves all ideas in the roadmap idea pool.
getPhaseRetrieves a specific roadmap phase by its ID.
moveFeatureMoves a feature to a different phase or reorders it within its current phase.
moveIdeaToRoadmapPromotes an idea to the roadmap as a feature.
reviewIdeaSubmits an idea for review.
sendFeatureToChatSends a feature to the chat for discussion.
updateFeatureUpdates an existing feature.
updateIdeaUpdates an existing idea.
updatePhaseUpdates an existing roadmap phase.

Methods


createFeature

client.roadmap.createFeature(phaseId: string, data: CreateFeatureRequest): Promise<RoadmapFeature>

Creates a new feature within a specific phase.

Adds a feature to the roadmap under the specified phase. Features represent discrete pieces of functionality planned for delivery.

ParameterTypeRequiredDescription
phaseIdstringYesThe unique identifier of the phase to add the feature to
dataCreateFeatureRequestYesThe feature creation payload including title and description

Returns: Promise<RoadmapFeature> — A promise that resolves to the newly created RoadmapFeature

Full reference →


createIdea

client.roadmap.createIdea(data: CreateIdeaRequest): Promise<RoadmapIdea>

Creates a new idea in the roadmap idea pool.

Adds an idea that can later be reviewed, refined, and potentially promoted to a full feature on the roadmap.

ParameterTypeRequiredDescription
dataCreateIdeaRequestYesThe idea creation payload including title and description

Returns: Promise<RoadmapIdea> — A promise that resolves to the newly created RoadmapIdea

Full reference →


createPhase

client.roadmap.createPhase(data: CreatePhaseRequest): Promise<RoadmapPhase>

Creates a new roadmap phase.

Adds a high-level phase to the roadmap for organizing features. Phases typically represent milestones, sprints, or release versions.

ParameterTypeRequiredDescription
dataCreatePhaseRequestYesThe phase creation payload including name and optional description

Returns: Promise<RoadmapPhase> — A promise that resolves to the newly created RoadmapPhase

Full reference →


createTaskFromFeature

client.roadmap.createTaskFromFeature(featureId: string, data?: CreateTaskFromFeatureRequest): Promise<unknown>

Creates a task from a roadmap feature.

Converts a feature into an actionable task in the task management system. This bridges the gap between roadmap planning and task execution.

ParameterTypeRequiredDescription
featureIdstringYesThe unique identifier of the feature to create a task from
dataCreateTaskFromFeatureRequestNoOptional task creation parameters to override defaults

Returns: Promise<unknown> — A promise that resolves when the task has been created

Full reference →


deleteFeature

client.roadmap.deleteFeature(featureId: string): Promise<unknown>

Deletes a feature from the roadmap.

Permanently removes a feature. This action cannot be undone.

ParameterTypeRequiredDescription
featureIdstringYesThe unique identifier of the feature to delete

Returns: Promise<unknown> — A promise that resolves when the feature has been deleted

Full reference →


deleteIdea

client.roadmap.deleteIdea(ideaId: string): Promise<unknown>

Deletes an idea from the roadmap idea pool.

Permanently removes an idea. This action cannot be undone.

ParameterTypeRequiredDescription
ideaIdstringYesThe unique identifier of the idea to delete

Returns: Promise<unknown> — A promise that resolves when the idea has been deleted

Full reference →


deletePhase

client.roadmap.deletePhase(phaseId: string): Promise<unknown>

Deletes a roadmap phase.

Permanently removes a phase and potentially its associated features. This action cannot be undone.

ParameterTypeRequiredDescription
phaseIdstringYesThe unique identifier of the phase to delete

Returns: Promise<unknown> — A promise that resolves when the phase has been deleted

Full reference →


get

client.roadmap.get(params?: Record<string, unknown>): Promise<RoadmapPhase[]>

Retrieves the full roadmap with all phases.

Returns the complete roadmap structure including all phases and their nested features. Use optional query parameters to filter or paginate results.

ParameterTypeRequiredDescription
paramsRecord<string, unknown>NoOptional query parameters for filtering the roadmap

Returns: Promise<RoadmapPhase[]> — A promise that resolves to an array of RoadmapPhase objects

Full reference →


getFeature

client.roadmap.getFeature(featureId: string): Promise<RoadmapFeature>

Retrieves a specific feature by its ID.

Fetches the full details of a single feature including its status, description, and associated metadata.

ParameterTypeRequiredDescription
featureIdstringYesThe unique identifier of the feature

Returns: Promise<RoadmapFeature> — A promise that resolves to the RoadmapFeature object

Full reference →


getFeatures

client.roadmap.getFeatures(params?: Record<string, unknown>): Promise<RoadmapFeature[]>

Retrieves all features across all roadmap phases.

Returns a flat list of all features regardless of which phase they belong to. Use optional query parameters to filter by status, priority, or other criteria.

ParameterTypeRequiredDescription
paramsRecord<string, unknown>NoOptional query parameters for filtering features

Returns: Promise<RoadmapFeature[]> — A promise that resolves to an array of RoadmapFeature objects

Full reference →


getIdea

client.roadmap.getIdea(ideaId: string): Promise<RoadmapIdea>

Retrieves a specific idea by its ID.

Fetches the full details of a single idea including its status and review history.

ParameterTypeRequiredDescription
ideaIdstringYesThe unique identifier of the idea

Returns: Promise<RoadmapIdea> — A promise that resolves to the RoadmapIdea object

Full reference →


getIdeas

client.roadmap.getIdeas(params?: Record<string, unknown>): Promise<RoadmapIdea[]>

Retrieves all ideas in the roadmap idea pool.

Ideas are proposals that have not yet been promoted to features. Use optional query parameters to filter by status or other criteria.

ParameterTypeRequiredDescription
paramsRecord<string, unknown>NoOptional query parameters for filtering ideas

Returns: Promise<RoadmapIdea[]> — A promise that resolves to an array of RoadmapIdea objects

Full reference →


getPhase

client.roadmap.getPhase(phaseId: string): Promise<RoadmapPhase>

Retrieves a specific roadmap phase by its ID.

Fetches the full details of a single phase including its metadata and associated features.

ParameterTypeRequiredDescription
phaseIdstringYesThe unique identifier of the phase

Returns: Promise<RoadmapPhase> — A promise that resolves to the RoadmapPhase object

Full reference →


moveFeature

client.roadmap.moveFeature(featureId: string, data: MoveFeatureRequest): Promise<unknown>

Moves a feature to a different phase or reorders it within its current phase.

Use this to reorganize the roadmap by relocating features between phases or changing the display order of features within a phase.

ParameterTypeRequiredDescription
featureIdstringYesThe unique identifier of the feature to move
dataMoveFeatureRequestYesThe move parameters including target phase and/or position

Returns: Promise<unknown> — A promise that resolves when the feature has been moved

Full reference →


moveIdeaToRoadmap

client.roadmap.moveIdeaToRoadmap(ideaId: string, data?: MoveIdeaToRoadmapRequest): Promise<unknown>

Promotes an idea to the roadmap as a feature.

Converts a reviewed and approved idea into a feature within a specified roadmap phase. This is the final step in the idea-to-feature pipeline.

ParameterTypeRequiredDescription
ideaIdstringYesThe unique identifier of the idea to promote
dataMoveIdeaToRoadmapRequestNoOptional parameters including target phase for the new feature

Returns: Promise<unknown> — A promise that resolves when the idea has been promoted to a feature

Full reference →


reviewIdea

client.roadmap.reviewIdea(ideaId: string, data?: ReviewIdeaRequest): Promise<unknown>

Submits an idea for review.

Moves an idea into the review process where it can be evaluated for potential promotion to a roadmap feature.

ParameterTypeRequiredDescription
ideaIdstringYesThe unique identifier of the idea to review
dataReviewIdeaRequestNoOptional review parameters such as reviewer assignment

Returns: Promise<unknown> — A promise that resolves when the idea has been submitted for review

Full reference →


sendFeatureToChat

client.roadmap.sendFeatureToChat(featureId: string, data?: SendFeatureToChatRequest): Promise<unknown>

Sends a feature to the chat for discussion.

Shares the feature details in a chat context so that team members or agents can discuss and collaborate on the feature requirements.

ParameterTypeRequiredDescription
featureIdstringYesThe unique identifier of the feature to send to chat
dataSendFeatureToChatRequestNoOptional parameters controlling how the feature is shared

Returns: Promise<unknown> — A promise that resolves when the feature has been sent to chat

Full reference →


updateFeature

client.roadmap.updateFeature(featureId: string, data: UpdateFeatureRequest): Promise<RoadmapFeature>

Updates an existing feature.

Modifies the properties of a feature such as its title, description, status, or priority.

ParameterTypeRequiredDescription
featureIdstringYesThe unique identifier of the feature to update
dataUpdateFeatureRequestYesThe fields to update on the feature

Returns: Promise<RoadmapFeature> — A promise that resolves to the updated RoadmapFeature

Full reference →


updateIdea

client.roadmap.updateIdea(ideaId: string, data: UpdateIdeaRequest): Promise<RoadmapIdea>

Updates an existing idea.

Modifies the properties of an idea such as its title, description, or status.

ParameterTypeRequiredDescription
ideaIdstringYesThe unique identifier of the idea to update
dataUpdateIdeaRequestYesThe fields to update on the idea

Returns: Promise<RoadmapIdea> — A promise that resolves to the updated RoadmapIdea

Full reference →


updatePhase

client.roadmap.updatePhase(phaseId: string, data: UpdatePhaseRequest): Promise<RoadmapPhase>

Updates an existing roadmap phase.

Modifies the properties of a phase such as its name, description, or ordering.

ParameterTypeRequiredDescription
phaseIdstringYesThe unique identifier of the phase to update
dataUpdatePhaseRequestYesThe fields to update on the phase

Returns: Promise<RoadmapPhase> — A promise that resolves to the updated RoadmapPhase

Full reference →