api

package
v0.12.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 13, 2026 License: MIT Imports: 28 Imported by: 0

Documentation

Overview

Package api provides HTTP handlers for the arc REST API.

Package api provides primitives to interact with the openapi HTTP API.

Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.5.1 DO NOT EDIT.

Package api provides the REST API server for arc.

teams.go implements the team context API endpoint which groups issues by teammate role labels for coordinating agent-team workflows.

Package api provides HTTP handlers for the arc REST API. This file contains workspace path (directory registration) endpoints.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetSwagger

func GetSwagger() (swagger *openapi3.T, err error)

GetSwagger returns the Swagger specification corresponding to the generated code in this file. The external references of Swagger specification are resolved. The logic of resolving external references is tightly connected to "import-mapping" feature. Externally referenced files must be embedded in the corresponding golang packages. Urls can be supported but this task was out of the scope.

func PathToRawSpec

func PathToRawSpec(pathToFile string) map[string]func() ([]byte, error)

Constructs a synthetic filesystem for resolving external references when loading openapi specifications.

func RegisterHandlers

func RegisterHandlers(router EchoRouter, si ServerInterface)

RegisterHandlers adds each server route to the EchoRouter.

func RegisterHandlersWithBaseURL

func RegisterHandlersWithBaseURL(router EchoRouter, si ServerInterface, baseURL string)

Registers handlers, and prepends BaseURL to the paths, so that the paths can be served under a prefix.

Types

type ActorHeader

type ActorHeader = string

ActorHeader defines model for ActorHeader.

type AddComment201JSONResponse

type AddComment201JSONResponse Comment

func (AddComment201JSONResponse) VisitAddCommentResponse

func (response AddComment201JSONResponse) VisitAddCommentResponse(w http.ResponseWriter) error

type AddComment400JSONResponse

type AddComment400JSONResponse struct{ BadRequestJSONResponse }

func (AddComment400JSONResponse) VisitAddCommentResponse

func (response AddComment400JSONResponse) VisitAddCommentResponse(w http.ResponseWriter) error

type AddComment404JSONResponse

type AddComment404JSONResponse struct{ NotFoundJSONResponse }

func (AddComment404JSONResponse) VisitAddCommentResponse

func (response AddComment404JSONResponse) VisitAddCommentResponse(w http.ResponseWriter) error

type AddComment500JSONResponse

type AddComment500JSONResponse struct{ InternalErrorJSONResponse }

func (AddComment500JSONResponse) VisitAddCommentResponse

func (response AddComment500JSONResponse) VisitAddCommentResponse(w http.ResponseWriter) error

type AddCommentJSONRequestBody

type AddCommentJSONRequestBody = AddCommentRequest

AddCommentJSONRequestBody defines body for AddComment for application/json ContentType.

type AddCommentParams

type AddCommentParams struct {
	// XActor User performing the action (defaults to "anonymous")
	XActor *ActorHeader `json:"X-Actor,omitempty"`
}

AddCommentParams defines parameters for AddComment.

type AddCommentRequest

type AddCommentRequest struct {
	Text string `json:"text"`
}

AddCommentRequest defines model for AddCommentRequest.

type AddCommentRequestObject

type AddCommentRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	IssueID   IssueID   `json:"issueId"`
	Params    AddCommentParams
	Body      *AddCommentJSONRequestBody
}

type AddCommentResponseObject

type AddCommentResponseObject interface {
	VisitAddCommentResponse(w http.ResponseWriter) error
}

type AddDependency201JSONResponse

type AddDependency201JSONResponse Dependency

func (AddDependency201JSONResponse) VisitAddDependencyResponse

func (response AddDependency201JSONResponse) VisitAddDependencyResponse(w http.ResponseWriter) error

type AddDependency400JSONResponse

type AddDependency400JSONResponse struct{ BadRequestJSONResponse }

func (AddDependency400JSONResponse) VisitAddDependencyResponse

func (response AddDependency400JSONResponse) VisitAddDependencyResponse(w http.ResponseWriter) error

type AddDependency404JSONResponse

type AddDependency404JSONResponse struct{ NotFoundJSONResponse }

func (AddDependency404JSONResponse) VisitAddDependencyResponse

func (response AddDependency404JSONResponse) VisitAddDependencyResponse(w http.ResponseWriter) error

type AddDependency500JSONResponse

type AddDependency500JSONResponse struct{ InternalErrorJSONResponse }

func (AddDependency500JSONResponse) VisitAddDependencyResponse

func (response AddDependency500JSONResponse) VisitAddDependencyResponse(w http.ResponseWriter) error

type AddDependencyJSONRequestBody

type AddDependencyJSONRequestBody = AddDependencyRequest

AddDependencyJSONRequestBody defines body for AddDependency for application/json ContentType.

type AddDependencyParams

type AddDependencyParams struct {
	// XActor User performing the action (defaults to "anonymous")
	XActor *ActorHeader `json:"X-Actor,omitempty"`
}

AddDependencyParams defines parameters for AddDependency.

type AddDependencyRequest

type AddDependencyRequest struct {
	// DependsOnID ID of the issue this depends on
	DependsOnID string         `json:"depends_on_id"`
	Type        DependencyType `json:"type"`
}

AddDependencyRequest defines model for AddDependencyRequest.

type AddDependencyRequestObject

type AddDependencyRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	IssueID   IssueID   `json:"issueId"`
	Params    AddDependencyParams
	Body      *AddDependencyJSONRequestBody
}

type AddDependencyResponseObject

type AddDependencyResponseObject interface {
	VisitAddDependencyResponse(w http.ResponseWriter) error
}

type AddLabelToIssue204Response

type AddLabelToIssue204Response struct {
}

func (AddLabelToIssue204Response) VisitAddLabelToIssueResponse

func (response AddLabelToIssue204Response) VisitAddLabelToIssueResponse(w http.ResponseWriter) error

type AddLabelToIssue400JSONResponse

type AddLabelToIssue400JSONResponse struct{ BadRequestJSONResponse }

func (AddLabelToIssue400JSONResponse) VisitAddLabelToIssueResponse

func (response AddLabelToIssue400JSONResponse) VisitAddLabelToIssueResponse(w http.ResponseWriter) error

type AddLabelToIssue404JSONResponse

type AddLabelToIssue404JSONResponse struct{ NotFoundJSONResponse }

func (AddLabelToIssue404JSONResponse) VisitAddLabelToIssueResponse

func (response AddLabelToIssue404JSONResponse) VisitAddLabelToIssueResponse(w http.ResponseWriter) error

type AddLabelToIssue500JSONResponse

type AddLabelToIssue500JSONResponse struct{ InternalErrorJSONResponse }

func (AddLabelToIssue500JSONResponse) VisitAddLabelToIssueResponse

func (response AddLabelToIssue500JSONResponse) VisitAddLabelToIssueResponse(w http.ResponseWriter) error

type AddLabelToIssueJSONRequestBody

type AddLabelToIssueJSONRequestBody = AddLabelToIssueRequest

AddLabelToIssueJSONRequestBody defines body for AddLabelToIssue for application/json ContentType.

type AddLabelToIssueParams

type AddLabelToIssueParams struct {
	// XActor User performing the action (defaults to "anonymous")
	XActor *ActorHeader `json:"X-Actor,omitempty"`
}

AddLabelToIssueParams defines parameters for AddLabelToIssue.

type AddLabelToIssueRequest

type AddLabelToIssueRequest struct {
	Label string `json:"label"`
}

AddLabelToIssueRequest defines model for AddLabelToIssueRequest.

type AddLabelToIssueRequestObject

type AddLabelToIssueRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	IssueID   IssueID   `json:"issueId"`
	Params    AddLabelToIssueParams
	Body      *AddLabelToIssueJSONRequestBody
}

type AddLabelToIssueResponseObject

type AddLabelToIssueResponseObject interface {
	VisitAddLabelToIssueResponse(w http.ResponseWriter) error
}

type BadRequest

type BadRequest = Error

BadRequest defines model for BadRequest.

type BadRequestJSONResponse

type BadRequestJSONResponse Error

type BlockedIssue

type BlockedIssue struct {
	Assignee       *string       `json:"assignee,omitempty"`
	BlockedBy      []string      `json:"blocked_by"`
	BlockedByCount int           `json:"blocked_by_count"`
	CloseReason    *string       `json:"close_reason,omitempty"`
	ClosedAt       *time.Time    `json:"closed_at,omitempty"`
	Comments       *[]Comment    `json:"comments,omitempty"`
	CreatedAt      time.Time     `json:"created_at"`
	Dependencies   *[]Dependency `json:"dependencies,omitempty"`
	Description    *string       `json:"description,omitempty"`

	// ExternalRef External reference (e.g., "gh-9", "jira-ABC")
	ExternalRef *string `json:"external_ref,omitempty"`

	// ID Unique issue ID
	ID        string    `json:"id"`
	IssueType IssueType `json:"issue_type"`
	Labels    *[]string `json:"labels,omitempty"`

	// Priority 0 (critical) - 4 (backlog)
	Priority  int    `json:"priority"`
	ProjectID string `json:"project_id"`

	// Rank 0 = unranked (sorts last), 1+ = lower rank = work on first
	Rank      *int      `json:"rank,omitempty"`
	Status    Status    `json:"status"`
	Title     string    `json:"title"`
	UpdatedAt time.Time `json:"updated_at"`
}

BlockedIssue defines model for BlockedIssue.

type CloseIssue200JSONResponse

type CloseIssue200JSONResponse Issue

func (CloseIssue200JSONResponse) VisitCloseIssueResponse

func (response CloseIssue200JSONResponse) VisitCloseIssueResponse(w http.ResponseWriter) error

type CloseIssue400JSONResponse

type CloseIssue400JSONResponse struct{ BadRequestJSONResponse }

func (CloseIssue400JSONResponse) VisitCloseIssueResponse

func (response CloseIssue400JSONResponse) VisitCloseIssueResponse(w http.ResponseWriter) error

type CloseIssue404JSONResponse

type CloseIssue404JSONResponse struct{ NotFoundJSONResponse }

func (CloseIssue404JSONResponse) VisitCloseIssueResponse

func (response CloseIssue404JSONResponse) VisitCloseIssueResponse(w http.ResponseWriter) error

type CloseIssue500JSONResponse

type CloseIssue500JSONResponse struct{ InternalErrorJSONResponse }

func (CloseIssue500JSONResponse) VisitCloseIssueResponse

func (response CloseIssue500JSONResponse) VisitCloseIssueResponse(w http.ResponseWriter) error

type CloseIssueJSONRequestBody

type CloseIssueJSONRequestBody = CloseIssueRequest

CloseIssueJSONRequestBody defines body for CloseIssue for application/json ContentType.

type CloseIssueParams

type CloseIssueParams struct {
	// XActor User performing the action (defaults to "anonymous")
	XActor *ActorHeader `json:"X-Actor,omitempty"`
}

CloseIssueParams defines parameters for CloseIssue.

type CloseIssueRequest

type CloseIssueRequest struct {
	// Reason Reason for closing
	Reason *string `json:"reason,omitempty"`
}

CloseIssueRequest defines model for CloseIssueRequest.

type CloseIssueRequestObject

type CloseIssueRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	IssueID   IssueID   `json:"issueId"`
	Params    CloseIssueParams
	Body      *CloseIssueJSONRequestBody
}

type CloseIssueResponseObject

type CloseIssueResponseObject interface {
	VisitCloseIssueResponse(w http.ResponseWriter) error
}

type Comment

type Comment struct {
	Author    string     `json:"author"`
	CreatedAt time.Time  `json:"created_at"`
	ID        int64      `json:"id"`
	IssueID   string     `json:"issue_id"`
	Text      string     `json:"text"`
	UpdatedAt *time.Time `json:"updated_at,omitempty"`
}

Comment defines model for Comment.

type Config

type Config struct {
	Address string // e.g., ":7432" or "localhost:7432"
	Store   storage.Storage
}

Config holds server configuration.

type CreateIssue201JSONResponse

type CreateIssue201JSONResponse Issue

func (CreateIssue201JSONResponse) VisitCreateIssueResponse

func (response CreateIssue201JSONResponse) VisitCreateIssueResponse(w http.ResponseWriter) error

type CreateIssue400JSONResponse

type CreateIssue400JSONResponse struct{ BadRequestJSONResponse }

func (CreateIssue400JSONResponse) VisitCreateIssueResponse

func (response CreateIssue400JSONResponse) VisitCreateIssueResponse(w http.ResponseWriter) error

type CreateIssue500JSONResponse

type CreateIssue500JSONResponse struct{ InternalErrorJSONResponse }

func (CreateIssue500JSONResponse) VisitCreateIssueResponse

func (response CreateIssue500JSONResponse) VisitCreateIssueResponse(w http.ResponseWriter) error

type CreateIssueJSONRequestBody

type CreateIssueJSONRequestBody = CreateIssueRequest

CreateIssueJSONRequestBody defines body for CreateIssue for application/json ContentType.

type CreateIssueParams

type CreateIssueParams struct {
	// XActor User performing the action (defaults to "anonymous")
	XActor *ActorHeader `json:"X-Actor,omitempty"`
}

CreateIssueParams defines parameters for CreateIssue.

type CreateIssueRequest

type CreateIssueRequest struct {
	Assignee    *string    `json:"assignee,omitempty"`
	Description *string    `json:"description,omitempty"`
	ExternalRef *string    `json:"external_ref,omitempty"`
	IssueType   *IssueType `json:"issue_type,omitempty"`
	Priority    *int       `json:"priority,omitempty"`
	Status      *Status    `json:"status,omitempty"`
	Title       string     `json:"title"`
}

CreateIssueRequest defines model for CreateIssueRequest.

type CreateIssueRequestObject

type CreateIssueRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	Params    CreateIssueParams
	Body      *CreateIssueJSONRequestBody
}

type CreateIssueResponseObject

type CreateIssueResponseObject interface {
	VisitCreateIssueResponse(w http.ResponseWriter) error
}

type CreateLabel201JSONResponse

type CreateLabel201JSONResponse Label

func (CreateLabel201JSONResponse) VisitCreateLabelResponse

func (response CreateLabel201JSONResponse) VisitCreateLabelResponse(w http.ResponseWriter) error

type CreateLabel400JSONResponse

type CreateLabel400JSONResponse struct{ BadRequestJSONResponse }

func (CreateLabel400JSONResponse) VisitCreateLabelResponse

func (response CreateLabel400JSONResponse) VisitCreateLabelResponse(w http.ResponseWriter) error

type CreateLabel500JSONResponse

type CreateLabel500JSONResponse struct{ InternalErrorJSONResponse }

func (CreateLabel500JSONResponse) VisitCreateLabelResponse

func (response CreateLabel500JSONResponse) VisitCreateLabelResponse(w http.ResponseWriter) error

type CreateLabelJSONRequestBody

type CreateLabelJSONRequestBody = CreateLabelRequest

CreateLabelJSONRequestBody defines body for CreateLabel for application/json ContentType.

type CreateLabelRequest

type CreateLabelRequest struct {
	Color       *string `json:"color,omitempty"`
	Description *string `json:"description,omitempty"`
	Name        string  `json:"name"`
}

CreateLabelRequest defines model for CreateLabelRequest.

type CreateLabelRequestObject

type CreateLabelRequestObject struct {
	Body *CreateLabelJSONRequestBody
}

type CreateLabelResponseObject

type CreateLabelResponseObject interface {
	VisitCreateLabelResponse(w http.ResponseWriter) error
}

type CreateProject201JSONResponse added in v0.12.0

type CreateProject201JSONResponse Project

func (CreateProject201JSONResponse) VisitCreateProjectResponse added in v0.12.0

func (response CreateProject201JSONResponse) VisitCreateProjectResponse(w http.ResponseWriter) error

type CreateProject400JSONResponse added in v0.12.0

type CreateProject400JSONResponse struct{ BadRequestJSONResponse }

func (CreateProject400JSONResponse) VisitCreateProjectResponse added in v0.12.0

func (response CreateProject400JSONResponse) VisitCreateProjectResponse(w http.ResponseWriter) error

type CreateProject500JSONResponse added in v0.12.0

type CreateProject500JSONResponse struct{ InternalErrorJSONResponse }

func (CreateProject500JSONResponse) VisitCreateProjectResponse added in v0.12.0

func (response CreateProject500JSONResponse) VisitCreateProjectResponse(w http.ResponseWriter) error

type CreateProjectJSONRequestBody added in v0.12.0

type CreateProjectJSONRequestBody = CreateProjectRequest

CreateProjectJSONRequestBody defines body for CreateProject for application/json ContentType.

type CreateProjectRequest added in v0.12.0

type CreateProjectRequest struct {
	// Description Project description
	Description *string `json:"description,omitempty"`

	// Name Display name
	Name string `json:"name"`

	// Path Optional associated directory path
	Path *string `json:"path,omitempty"`

	// Prefix Issue ID prefix
	Prefix string `json:"prefix"`
}

CreateProjectRequest defines model for CreateProjectRequest.

type CreateProjectRequestObject added in v0.12.0

type CreateProjectRequestObject struct {
	Body *CreateProjectJSONRequestBody
}

type CreateProjectResponseObject added in v0.12.0

type CreateProjectResponseObject interface {
	VisitCreateProjectResponse(w http.ResponseWriter) error
}

type DeleteComment204Response

type DeleteComment204Response struct {
}

func (DeleteComment204Response) VisitDeleteCommentResponse

func (response DeleteComment204Response) VisitDeleteCommentResponse(w http.ResponseWriter) error

type DeleteComment404JSONResponse

type DeleteComment404JSONResponse struct{ NotFoundJSONResponse }

func (DeleteComment404JSONResponse) VisitDeleteCommentResponse

func (response DeleteComment404JSONResponse) VisitDeleteCommentResponse(w http.ResponseWriter) error

type DeleteComment500JSONResponse

type DeleteComment500JSONResponse struct{ InternalErrorJSONResponse }

func (DeleteComment500JSONResponse) VisitDeleteCommentResponse

func (response DeleteComment500JSONResponse) VisitDeleteCommentResponse(w http.ResponseWriter) error

type DeleteCommentRequestObject

type DeleteCommentRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	IssueID   IssueID   `json:"issueId"`
	CommentID int64     `json:"commentId"`
}

type DeleteCommentResponseObject

type DeleteCommentResponseObject interface {
	VisitDeleteCommentResponse(w http.ResponseWriter) error
}

type DeleteIssue204Response

type DeleteIssue204Response struct {
}

func (DeleteIssue204Response) VisitDeleteIssueResponse

func (response DeleteIssue204Response) VisitDeleteIssueResponse(w http.ResponseWriter) error

type DeleteIssue404JSONResponse

type DeleteIssue404JSONResponse struct{ NotFoundJSONResponse }

func (DeleteIssue404JSONResponse) VisitDeleteIssueResponse

func (response DeleteIssue404JSONResponse) VisitDeleteIssueResponse(w http.ResponseWriter) error

type DeleteIssue500JSONResponse

type DeleteIssue500JSONResponse struct{ InternalErrorJSONResponse }

func (DeleteIssue500JSONResponse) VisitDeleteIssueResponse

func (response DeleteIssue500JSONResponse) VisitDeleteIssueResponse(w http.ResponseWriter) error

type DeleteIssueRequestObject

type DeleteIssueRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	IssueID   IssueID   `json:"issueId"`
}

type DeleteIssueResponseObject

type DeleteIssueResponseObject interface {
	VisitDeleteIssueResponse(w http.ResponseWriter) error
}

type DeleteLabel204Response

type DeleteLabel204Response struct {
}

func (DeleteLabel204Response) VisitDeleteLabelResponse

func (response DeleteLabel204Response) VisitDeleteLabelResponse(w http.ResponseWriter) error

type DeleteLabel404JSONResponse

type DeleteLabel404JSONResponse struct{ NotFoundJSONResponse }

func (DeleteLabel404JSONResponse) VisitDeleteLabelResponse

func (response DeleteLabel404JSONResponse) VisitDeleteLabelResponse(w http.ResponseWriter) error

type DeleteLabel500JSONResponse

type DeleteLabel500JSONResponse struct{ InternalErrorJSONResponse }

func (DeleteLabel500JSONResponse) VisitDeleteLabelResponse

func (response DeleteLabel500JSONResponse) VisitDeleteLabelResponse(w http.ResponseWriter) error

type DeleteLabelRequestObject

type DeleteLabelRequestObject struct {
	LabelName string `json:"labelName"`
}

type DeleteLabelResponseObject

type DeleteLabelResponseObject interface {
	VisitDeleteLabelResponse(w http.ResponseWriter) error
}

type DeleteProject204Response added in v0.12.0

type DeleteProject204Response struct {
}

func (DeleteProject204Response) VisitDeleteProjectResponse added in v0.12.0

func (response DeleteProject204Response) VisitDeleteProjectResponse(w http.ResponseWriter) error

type DeleteProject404JSONResponse added in v0.12.0

type DeleteProject404JSONResponse struct{ NotFoundJSONResponse }

func (DeleteProject404JSONResponse) VisitDeleteProjectResponse added in v0.12.0

func (response DeleteProject404JSONResponse) VisitDeleteProjectResponse(w http.ResponseWriter) error

type DeleteProject500JSONResponse added in v0.12.0

type DeleteProject500JSONResponse struct{ InternalErrorJSONResponse }

func (DeleteProject500JSONResponse) VisitDeleteProjectResponse added in v0.12.0

func (response DeleteProject500JSONResponse) VisitDeleteProjectResponse(w http.ResponseWriter) error

type DeleteProjectRequestObject added in v0.12.0

type DeleteProjectRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
}

type DeleteProjectResponseObject added in v0.12.0

type DeleteProjectResponseObject interface {
	VisitDeleteProjectResponse(w http.ResponseWriter) error
}

type Dependency

type Dependency struct {
	CreatedAt   time.Time      `json:"created_at"`
	CreatedBy   *string        `json:"created_by,omitempty"`
	DependsOnID string         `json:"depends_on_id"`
	IssueID     string         `json:"issue_id"`
	Type        DependencyType `json:"type"`
}

Dependency defines model for Dependency.

type DependencyGraph

type DependencyGraph struct {
	Dependencies []Dependency `json:"dependencies"`
	Dependents   []Dependency `json:"dependents"`
}

DependencyGraph defines model for DependencyGraph.

type DependencyType

type DependencyType string

DependencyType defines model for DependencyType.

const (
	Blocks         DependencyType = "blocks"
	DiscoveredFrom DependencyType = "discovered-from"
	ParentChild    DependencyType = "parent-child"
	Related        DependencyType = "related"
)

Defines values for DependencyType.

type EchoRouter

type EchoRouter interface {
	CONNECT(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	DELETE(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	GET(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	HEAD(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	OPTIONS(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	PATCH(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	POST(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	PUT(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	TRACE(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
}

This is a simple interface which specifies echo.Route addition functions which are present on both echo.Echo and echo.Group, since we want to allow using either of them for path registration

type Error

type Error struct {
	// Error Error message
	Error string `json:"error"`
}

Error defines model for Error.

type Event

type Event struct {
	Actor     string    `json:"actor"`
	Comment   *string   `json:"comment,omitempty"`
	CreatedAt time.Time `json:"created_at"`
	EventType EventType `json:"event_type"`
	ID        int64     `json:"id"`
	IssueID   string    `json:"issue_id"`
	NewValue  *string   `json:"new_value,omitempty"`
	OldValue  *string   `json:"old_value,omitempty"`
}

Event defines model for Event.

type EventType

type EventType string

EventType defines model for EventType.

const (
	EventTypeClosed            EventType = "closed"
	EventTypeCommented         EventType = "commented"
	EventTypeCreated           EventType = "created"
	EventTypeDependencyAdded   EventType = "dependency_added"
	EventTypeDependencyRemoved EventType = "dependency_removed"
	EventTypeLabelAdded        EventType = "label_added"
	EventTypeLabelRemoved      EventType = "label_removed"
	EventTypeReopened          EventType = "reopened"
	EventTypeStatusChanged     EventType = "status_changed"
	EventTypeUpdated           EventType = "updated"
)

Defines values for EventType.

type GetBlockedIssues200JSONResponse

type GetBlockedIssues200JSONResponse []BlockedIssue

func (GetBlockedIssues200JSONResponse) VisitGetBlockedIssuesResponse

func (response GetBlockedIssues200JSONResponse) VisitGetBlockedIssuesResponse(w http.ResponseWriter) error

type GetBlockedIssues500JSONResponse

type GetBlockedIssues500JSONResponse struct{ InternalErrorJSONResponse }

func (GetBlockedIssues500JSONResponse) VisitGetBlockedIssuesResponse

func (response GetBlockedIssues500JSONResponse) VisitGetBlockedIssuesResponse(w http.ResponseWriter) error

type GetBlockedIssuesParams

type GetBlockedIssuesParams struct {
	// Limit Maximum results to return
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`
}

GetBlockedIssuesParams defines parameters for GetBlockedIssues.

type GetBlockedIssuesRequestObject

type GetBlockedIssuesRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	Params    GetBlockedIssuesParams
}

type GetBlockedIssuesResponseObject

type GetBlockedIssuesResponseObject interface {
	VisitGetBlockedIssuesResponse(w http.ResponseWriter) error
}

type GetComments200JSONResponse

type GetComments200JSONResponse []Comment

func (GetComments200JSONResponse) VisitGetCommentsResponse

func (response GetComments200JSONResponse) VisitGetCommentsResponse(w http.ResponseWriter) error

type GetComments404JSONResponse

type GetComments404JSONResponse struct{ NotFoundJSONResponse }

func (GetComments404JSONResponse) VisitGetCommentsResponse

func (response GetComments404JSONResponse) VisitGetCommentsResponse(w http.ResponseWriter) error

type GetComments500JSONResponse

type GetComments500JSONResponse struct{ InternalErrorJSONResponse }

func (GetComments500JSONResponse) VisitGetCommentsResponse

func (response GetComments500JSONResponse) VisitGetCommentsResponse(w http.ResponseWriter) error

type GetCommentsRequestObject

type GetCommentsRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	IssueID   IssueID   `json:"issueId"`
}

type GetCommentsResponseObject

type GetCommentsResponseObject interface {
	VisitGetCommentsResponse(w http.ResponseWriter) error
}

type GetDependencies200JSONResponse

type GetDependencies200JSONResponse DependencyGraph

func (GetDependencies200JSONResponse) VisitGetDependenciesResponse

func (response GetDependencies200JSONResponse) VisitGetDependenciesResponse(w http.ResponseWriter) error

type GetDependencies404JSONResponse

type GetDependencies404JSONResponse struct{ NotFoundJSONResponse }

func (GetDependencies404JSONResponse) VisitGetDependenciesResponse

func (response GetDependencies404JSONResponse) VisitGetDependenciesResponse(w http.ResponseWriter) error

type GetDependencies500JSONResponse

type GetDependencies500JSONResponse struct{ InternalErrorJSONResponse }

func (GetDependencies500JSONResponse) VisitGetDependenciesResponse

func (response GetDependencies500JSONResponse) VisitGetDependenciesResponse(w http.ResponseWriter) error

type GetDependenciesRequestObject

type GetDependenciesRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	IssueID   IssueID   `json:"issueId"`
}

type GetDependenciesResponseObject

type GetDependenciesResponseObject interface {
	VisitGetDependenciesResponse(w http.ResponseWriter) error
}

type GetEvents200JSONResponse

type GetEvents200JSONResponse []Event

func (GetEvents200JSONResponse) VisitGetEventsResponse

func (response GetEvents200JSONResponse) VisitGetEventsResponse(w http.ResponseWriter) error

type GetEvents404JSONResponse

type GetEvents404JSONResponse struct{ NotFoundJSONResponse }

func (GetEvents404JSONResponse) VisitGetEventsResponse

func (response GetEvents404JSONResponse) VisitGetEventsResponse(w http.ResponseWriter) error

type GetEvents500JSONResponse

type GetEvents500JSONResponse struct{ InternalErrorJSONResponse }

func (GetEvents500JSONResponse) VisitGetEventsResponse

func (response GetEvents500JSONResponse) VisitGetEventsResponse(w http.ResponseWriter) error

type GetEventsParams

type GetEventsParams struct {
	// Limit Maximum events to return
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`
}

GetEventsParams defines parameters for GetEvents.

type GetEventsRequestObject

type GetEventsRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	IssueID   IssueID   `json:"issueId"`
	Params    GetEventsParams
}

type GetEventsResponseObject

type GetEventsResponseObject interface {
	VisitGetEventsResponse(w http.ResponseWriter) error
}

type GetIssue200JSONResponse

type GetIssue200JSONResponse struct {
	// contains filtered or unexported fields
}

func (GetIssue200JSONResponse) VisitGetIssueResponse

func (response GetIssue200JSONResponse) VisitGetIssueResponse(w http.ResponseWriter) error

type GetIssue404JSONResponse

type GetIssue404JSONResponse struct{ NotFoundJSONResponse }

func (GetIssue404JSONResponse) VisitGetIssueResponse

func (response GetIssue404JSONResponse) VisitGetIssueResponse(w http.ResponseWriter) error

type GetIssue500JSONResponse

type GetIssue500JSONResponse struct{ InternalErrorJSONResponse }

func (GetIssue500JSONResponse) VisitGetIssueResponse

func (response GetIssue500JSONResponse) VisitGetIssueResponse(w http.ResponseWriter) error

type GetIssueParams

type GetIssueParams struct {
	// Details Include full details (dependencies, comments, labels)
	Details *bool `form:"details,omitempty" json:"details,omitempty"`
}

GetIssueParams defines parameters for GetIssue.

type GetIssueRequestObject

type GetIssueRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	IssueID   IssueID   `json:"issueId"`
	Params    GetIssueParams
}

type GetIssueResponseObject

type GetIssueResponseObject interface {
	VisitGetIssueResponse(w http.ResponseWriter) error
}

type GetProject200JSONResponse added in v0.12.0

type GetProject200JSONResponse Project

func (GetProject200JSONResponse) VisitGetProjectResponse added in v0.12.0

func (response GetProject200JSONResponse) VisitGetProjectResponse(w http.ResponseWriter) error

type GetProject404JSONResponse added in v0.12.0

type GetProject404JSONResponse struct{ NotFoundJSONResponse }

func (GetProject404JSONResponse) VisitGetProjectResponse added in v0.12.0

func (response GetProject404JSONResponse) VisitGetProjectResponse(w http.ResponseWriter) error

type GetProject500JSONResponse added in v0.12.0

type GetProject500JSONResponse struct{ InternalErrorJSONResponse }

func (GetProject500JSONResponse) VisitGetProjectResponse added in v0.12.0

func (response GetProject500JSONResponse) VisitGetProjectResponse(w http.ResponseWriter) error

type GetProjectRequestObject added in v0.12.0

type GetProjectRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
}

type GetProjectResponseObject added in v0.12.0

type GetProjectResponseObject interface {
	VisitGetProjectResponse(w http.ResponseWriter) error
}

type GetProjectStats200JSONResponse added in v0.12.0

type GetProjectStats200JSONResponse Statistics

func (GetProjectStats200JSONResponse) VisitGetProjectStatsResponse added in v0.12.0

func (response GetProjectStats200JSONResponse) VisitGetProjectStatsResponse(w http.ResponseWriter) error

type GetProjectStats404JSONResponse added in v0.12.0

type GetProjectStats404JSONResponse struct{ NotFoundJSONResponse }

func (GetProjectStats404JSONResponse) VisitGetProjectStatsResponse added in v0.12.0

func (response GetProjectStats404JSONResponse) VisitGetProjectStatsResponse(w http.ResponseWriter) error

type GetProjectStats500JSONResponse added in v0.12.0

type GetProjectStats500JSONResponse struct{ InternalErrorJSONResponse }

func (GetProjectStats500JSONResponse) VisitGetProjectStatsResponse added in v0.12.0

func (response GetProjectStats500JSONResponse) VisitGetProjectStatsResponse(w http.ResponseWriter) error

type GetProjectStatsRequestObject added in v0.12.0

type GetProjectStatsRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
}

type GetProjectStatsResponseObject added in v0.12.0

type GetProjectStatsResponseObject interface {
	VisitGetProjectStatsResponse(w http.ResponseWriter) error
}

type GetReadyWork200JSONResponse

type GetReadyWork200JSONResponse []Issue

func (GetReadyWork200JSONResponse) VisitGetReadyWorkResponse

func (response GetReadyWork200JSONResponse) VisitGetReadyWorkResponse(w http.ResponseWriter) error

type GetReadyWork500JSONResponse

type GetReadyWork500JSONResponse struct{ InternalErrorJSONResponse }

func (GetReadyWork500JSONResponse) VisitGetReadyWorkResponse

func (response GetReadyWork500JSONResponse) VisitGetReadyWorkResponse(w http.ResponseWriter) error

type GetReadyWorkParams

type GetReadyWorkParams struct {
	// Type Filter by issue type
	Type *IssueType `form:"type,omitempty" json:"type,omitempty"`

	// Priority Filter by priority (0-4)
	Priority *int `form:"priority,omitempty" json:"priority,omitempty"`

	// Assignee Filter by assignee
	Assignee *string `form:"assignee,omitempty" json:"assignee,omitempty"`

	// Unassigned Filter for unassigned issues only
	Unassigned *bool `form:"unassigned,omitempty" json:"unassigned,omitempty"`

	// Limit Maximum results to return
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Sort Sort policy for ready issues:
	// - hybrid (default): Recent issues (<48h) sorted by priority/rank, older issues by age
	// - priority: Always sort by priority → rank → created_at
	// - oldest: Always sort by created_at (oldest first, for backlog clearing)
	Sort *GetReadyWorkParamsSort `form:"sort,omitempty" json:"sort,omitempty"`
}

GetReadyWorkParams defines parameters for GetReadyWork.

type GetReadyWorkParamsSort

type GetReadyWorkParamsSort string

GetReadyWorkParamsSort defines parameters for GetReadyWork.

const (
	Hybrid   GetReadyWorkParamsSort = "hybrid"
	Oldest   GetReadyWorkParamsSort = "oldest"
	Priority GetReadyWorkParamsSort = "priority"
)

Defines values for GetReadyWorkParamsSort.

type GetReadyWorkRequestObject

type GetReadyWorkRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	Params    GetReadyWorkParams
}

type GetReadyWorkResponseObject

type GetReadyWorkResponseObject interface {
	VisitGetReadyWorkResponse(w http.ResponseWriter) error
}

type GetTeamContext200JSONResponse added in v0.11.0

type GetTeamContext200JSONResponse TeamContext

func (GetTeamContext200JSONResponse) VisitGetTeamContextResponse added in v0.11.0

func (response GetTeamContext200JSONResponse) VisitGetTeamContextResponse(w http.ResponseWriter) error

type GetTeamContext404JSONResponse added in v0.11.0

type GetTeamContext404JSONResponse struct{ NotFoundJSONResponse }

func (GetTeamContext404JSONResponse) VisitGetTeamContextResponse added in v0.11.0

func (response GetTeamContext404JSONResponse) VisitGetTeamContextResponse(w http.ResponseWriter) error

type GetTeamContext500JSONResponse added in v0.11.0

type GetTeamContext500JSONResponse struct{ InternalErrorJSONResponse }

func (GetTeamContext500JSONResponse) VisitGetTeamContextResponse added in v0.11.0

func (response GetTeamContext500JSONResponse) VisitGetTeamContextResponse(w http.ResponseWriter) error

type GetTeamContextParams added in v0.11.0

type GetTeamContextParams struct {
	// EpicID Optional epic ID to scope to children of a specific epic
	EpicID *string `form:"epic_id,omitempty" json:"epic_id,omitempty"`
}

GetTeamContextParams defines parameters for GetTeamContext.

type GetTeamContextRequestObject added in v0.11.0

type GetTeamContextRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	Params    GetTeamContextParams
}

type GetTeamContextResponseObject added in v0.11.0

type GetTeamContextResponseObject interface {
	VisitGetTeamContextResponse(w http.ResponseWriter) error
}

type HealthResponse

type HealthResponse struct {
	Status   string  `json:"status"`
	Version  string  `json:"version"`
	Uptime   float64 `json:"uptime"` // seconds
	Port     int     `json:"port"`
	WebUIURL string  `json:"webui_url"`
}

HealthResponse contains health check information.

type InternalError

type InternalError = Error

InternalError defines model for InternalError.

type InternalErrorJSONResponse

type InternalErrorJSONResponse Error

type Issue

type Issue struct {
	Assignee     *string       `json:"assignee,omitempty"`
	CloseReason  *string       `json:"close_reason,omitempty"`
	ClosedAt     *time.Time    `json:"closed_at,omitempty"`
	Comments     *[]Comment    `json:"comments,omitempty"`
	CreatedAt    time.Time     `json:"created_at"`
	Dependencies *[]Dependency `json:"dependencies,omitempty"`
	Description  *string       `json:"description,omitempty"`

	// ExternalRef External reference (e.g., "gh-9", "jira-ABC")
	ExternalRef *string `json:"external_ref,omitempty"`

	// ID Unique issue ID
	ID        string    `json:"id"`
	IssueType IssueType `json:"issue_type"`
	Labels    *[]string `json:"labels,omitempty"`

	// Priority 0 (critical) - 4 (backlog)
	Priority  int    `json:"priority"`
	ProjectID string `json:"project_id"`

	// Rank 0 = unranked (sorts last), 1+ = lower rank = work on first
	Rank      *int      `json:"rank,omitempty"`
	Status    Status    `json:"status"`
	Title     string    `json:"title"`
	UpdatedAt time.Time `json:"updated_at"`
}

Issue defines model for Issue.

type IssueDetails

type IssueDetails struct {
	Assignee     *string       `json:"assignee,omitempty"`
	CloseReason  *string       `json:"close_reason,omitempty"`
	ClosedAt     *time.Time    `json:"closed_at,omitempty"`
	Comments     *[]Comment    `json:"comments,omitempty"`
	CreatedAt    time.Time     `json:"created_at"`
	Dependencies *[]Dependency `json:"dependencies,omitempty"`
	Dependents   *[]Dependency `json:"dependents,omitempty"`
	Description  *string       `json:"description,omitempty"`

	// ExternalRef External reference (e.g., "gh-9", "jira-ABC")
	ExternalRef *string `json:"external_ref,omitempty"`

	// ID Unique issue ID
	ID        string    `json:"id"`
	IssueType IssueType `json:"issue_type"`
	Labels    *[]string `json:"labels,omitempty"`

	// Priority 0 (critical) - 4 (backlog)
	Priority  int    `json:"priority"`
	ProjectID string `json:"project_id"`

	// Rank 0 = unranked (sorts last), 1+ = lower rank = work on first
	Rank      *int      `json:"rank,omitempty"`
	Status    Status    `json:"status"`
	Title     string    `json:"title"`
	UpdatedAt time.Time `json:"updated_at"`
}

IssueDetails defines model for IssueDetails.

type IssueID

type IssueID = string

IssueID defines model for IssueId.

type IssueType

type IssueType string

IssueType defines model for IssueType.

const (
	Bug     IssueType = "bug"
	Chore   IssueType = "chore"
	Epic    IssueType = "epic"
	Feature IssueType = "feature"
	Task    IssueType = "task"
)

Defines values for IssueType.

type Label

type Label struct {
	// Color Hex color code (e.g., "#ff0000")
	Color       *string `json:"color,omitempty"`
	Description *string `json:"description,omitempty"`
	Name        string  `json:"name"`
}

Label defines model for Label.

type ListIssues200JSONResponse

type ListIssues200JSONResponse PaginatedIssues

func (ListIssues200JSONResponse) VisitListIssuesResponse

func (response ListIssues200JSONResponse) VisitListIssuesResponse(w http.ResponseWriter) error

type ListIssues500JSONResponse

type ListIssues500JSONResponse struct{ InternalErrorJSONResponse }

func (ListIssues500JSONResponse) VisitListIssuesResponse

func (response ListIssues500JSONResponse) VisitListIssuesResponse(w http.ResponseWriter) error

type ListIssuesParams

type ListIssuesParams struct {
	// Status Filter by status
	Status *Status `form:"status,omitempty" json:"status,omitempty"`

	// Type Filter by issue type
	Type *IssueType `form:"type,omitempty" json:"type,omitempty"`

	// Priority Filter by priority (0-4)
	Priority *int `form:"priority,omitempty" json:"priority,omitempty"`

	// Assignee Filter by assignee
	Assignee *string `form:"assignee,omitempty" json:"assignee,omitempty"`

	// ParentID Filter by parent issue ID (returns children via parent-child dependency)
	ParentID *string `form:"parent_id,omitempty" json:"parent_id,omitempty"`

	// Q Full-text search query
	Q *string `form:"q,omitempty" json:"q,omitempty"`

	// Limit Maximum results to return
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Pagination offset
	Offset *int `form:"offset,omitempty" json:"offset,omitempty"`
}

ListIssuesParams defines parameters for ListIssues.

type ListIssuesRequestObject

type ListIssuesRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	Params    ListIssuesParams
}

type ListIssuesResponseObject

type ListIssuesResponseObject interface {
	VisitListIssuesResponse(w http.ResponseWriter) error
}

type ListLabels200JSONResponse

type ListLabels200JSONResponse []Label

func (ListLabels200JSONResponse) VisitListLabelsResponse

func (response ListLabels200JSONResponse) VisitListLabelsResponse(w http.ResponseWriter) error

type ListLabels500JSONResponse

type ListLabels500JSONResponse struct{ InternalErrorJSONResponse }

func (ListLabels500JSONResponse) VisitListLabelsResponse

func (response ListLabels500JSONResponse) VisitListLabelsResponse(w http.ResponseWriter) error

type ListLabelsRequestObject

type ListLabelsRequestObject struct {
}

type ListLabelsResponseObject

type ListLabelsResponseObject interface {
	VisitListLabelsResponse(w http.ResponseWriter) error
}

type ListProjects200JSONResponse added in v0.12.0

type ListProjects200JSONResponse []Project

func (ListProjects200JSONResponse) VisitListProjectsResponse added in v0.12.0

func (response ListProjects200JSONResponse) VisitListProjectsResponse(w http.ResponseWriter) error

type ListProjects500JSONResponse added in v0.12.0

type ListProjects500JSONResponse struct{ InternalErrorJSONResponse }

func (ListProjects500JSONResponse) VisitListProjectsResponse added in v0.12.0

func (response ListProjects500JSONResponse) VisitListProjectsResponse(w http.ResponseWriter) error

type ListProjectsRequestObject added in v0.12.0

type ListProjectsRequestObject struct {
}

type ListProjectsResponseObject added in v0.12.0

type ListProjectsResponseObject interface {
	VisitListProjectsResponse(w http.ResponseWriter) error
}

type NotFound

type NotFound = Error

NotFound defines model for NotFound.

type NotFoundJSONResponse

type NotFoundJSONResponse Error

type PaginatedIssues

type PaginatedIssues struct {
	Data   []Issue `json:"data"`
	Limit  *int    `json:"limit,omitempty"`
	Offset *int    `json:"offset,omitempty"`
	Total  *int    `json:"total,omitempty"`
}

PaginatedIssues defines model for PaginatedIssues.

type Project added in v0.12.0

type Project struct {
	CreatedAt time.Time `json:"created_at"`

	// Description Project description
	Description *string `json:"description,omitempty"`

	// ID Unique project ID (e.g., "proj-a1b2")
	ID string `json:"id"`

	// Name Display name
	Name string `json:"name"`

	// Path Optional associated directory path
	Path *string `json:"path,omitempty"`

	// Prefix Issue ID prefix (e.g., "bd")
	Prefix    string    `json:"prefix"`
	UpdatedAt time.Time `json:"updated_at"`
}

Project defines model for Project.

type ProjectID added in v0.12.0

type ProjectID = string

ProjectID defines model for ProjectId.

type RemoveDependency204Response

type RemoveDependency204Response struct {
}

func (RemoveDependency204Response) VisitRemoveDependencyResponse

func (response RemoveDependency204Response) VisitRemoveDependencyResponse(w http.ResponseWriter) error

type RemoveDependency404JSONResponse

type RemoveDependency404JSONResponse struct{ NotFoundJSONResponse }

func (RemoveDependency404JSONResponse) VisitRemoveDependencyResponse

func (response RemoveDependency404JSONResponse) VisitRemoveDependencyResponse(w http.ResponseWriter) error

type RemoveDependency500JSONResponse

type RemoveDependency500JSONResponse struct{ InternalErrorJSONResponse }

func (RemoveDependency500JSONResponse) VisitRemoveDependencyResponse

func (response RemoveDependency500JSONResponse) VisitRemoveDependencyResponse(w http.ResponseWriter) error

type RemoveDependencyParams

type RemoveDependencyParams struct {
	// XActor User performing the action (defaults to "anonymous")
	XActor *ActorHeader `json:"X-Actor,omitempty"`
}

RemoveDependencyParams defines parameters for RemoveDependency.

type RemoveDependencyRequestObject

type RemoveDependencyRequestObject struct {
	ProjectID   ProjectID `json:"projectId"`
	IssueID     IssueID   `json:"issueId"`
	DependsOnID string    `json:"dependsOnId"`
	Params      RemoveDependencyParams
}

type RemoveDependencyResponseObject

type RemoveDependencyResponseObject interface {
	VisitRemoveDependencyResponse(w http.ResponseWriter) error
}

type RemoveLabelFromIssue204Response

type RemoveLabelFromIssue204Response struct {
}

func (RemoveLabelFromIssue204Response) VisitRemoveLabelFromIssueResponse

func (response RemoveLabelFromIssue204Response) VisitRemoveLabelFromIssueResponse(w http.ResponseWriter) error

type RemoveLabelFromIssue404JSONResponse

type RemoveLabelFromIssue404JSONResponse struct{ NotFoundJSONResponse }

func (RemoveLabelFromIssue404JSONResponse) VisitRemoveLabelFromIssueResponse

func (response RemoveLabelFromIssue404JSONResponse) VisitRemoveLabelFromIssueResponse(w http.ResponseWriter) error

type RemoveLabelFromIssue500JSONResponse

type RemoveLabelFromIssue500JSONResponse struct{ InternalErrorJSONResponse }

func (RemoveLabelFromIssue500JSONResponse) VisitRemoveLabelFromIssueResponse

func (response RemoveLabelFromIssue500JSONResponse) VisitRemoveLabelFromIssueResponse(w http.ResponseWriter) error

type RemoveLabelFromIssueParams

type RemoveLabelFromIssueParams struct {
	// XActor User performing the action (defaults to "anonymous")
	XActor *ActorHeader `json:"X-Actor,omitempty"`
}

RemoveLabelFromIssueParams defines parameters for RemoveLabelFromIssue.

type RemoveLabelFromIssueRequestObject

type RemoveLabelFromIssueRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	IssueID   IssueID   `json:"issueId"`
	LabelName string    `json:"labelName"`
	Params    RemoveLabelFromIssueParams
}

type RemoveLabelFromIssueResponseObject

type RemoveLabelFromIssueResponseObject interface {
	VisitRemoveLabelFromIssueResponse(w http.ResponseWriter) error
}

type ReopenIssue200JSONResponse

type ReopenIssue200JSONResponse Issue

func (ReopenIssue200JSONResponse) VisitReopenIssueResponse

func (response ReopenIssue200JSONResponse) VisitReopenIssueResponse(w http.ResponseWriter) error

type ReopenIssue400JSONResponse

type ReopenIssue400JSONResponse struct{ BadRequestJSONResponse }

func (ReopenIssue400JSONResponse) VisitReopenIssueResponse

func (response ReopenIssue400JSONResponse) VisitReopenIssueResponse(w http.ResponseWriter) error

type ReopenIssue404JSONResponse

type ReopenIssue404JSONResponse struct{ NotFoundJSONResponse }

func (ReopenIssue404JSONResponse) VisitReopenIssueResponse

func (response ReopenIssue404JSONResponse) VisitReopenIssueResponse(w http.ResponseWriter) error

type ReopenIssue500JSONResponse

type ReopenIssue500JSONResponse struct{ InternalErrorJSONResponse }

func (ReopenIssue500JSONResponse) VisitReopenIssueResponse

func (response ReopenIssue500JSONResponse) VisitReopenIssueResponse(w http.ResponseWriter) error

type ReopenIssueParams

type ReopenIssueParams struct {
	// XActor User performing the action (defaults to "anonymous")
	XActor *ActorHeader `json:"X-Actor,omitempty"`
}

ReopenIssueParams defines parameters for ReopenIssue.

type ReopenIssueRequestObject

type ReopenIssueRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	IssueID   IssueID   `json:"issueId"`
	Params    ReopenIssueParams
}

type ReopenIssueResponseObject

type ReopenIssueResponseObject interface {
	VisitReopenIssueResponse(w http.ResponseWriter) error
}

type Server

type Server struct {
	// contains filtered or unexported fields
}

Server represents the REST API server.

func New

func New(cfg Config) *Server

New creates a new API server.

func (*Server) Echo added in v0.7.0

func (s *Server) Echo() *echo.Echo

Echo returns the underlying Echo instance for testing.

func (*Server) Shutdown

func (s *Server) Shutdown(ctx context.Context) error

Shutdown gracefully shuts down the server.

func (*Server) Start

func (s *Server) Start() error

Start starts the server.

type ServerInterface

type ServerInterface interface {
	// List all global labels
	// (GET /labels)
	ListLabels(ctx echo.Context) error
	// Create a new label
	// (POST /labels)
	CreateLabel(ctx echo.Context) error
	// Delete a label
	// (DELETE /labels/{labelName})
	DeleteLabel(ctx echo.Context, labelName string) error
	// Update a label
	// (PUT /labels/{labelName})
	UpdateLabel(ctx echo.Context, labelName string) error
	// List all projects
	// (GET /projects)
	ListProjects(ctx echo.Context) error
	// Create a new project
	// (POST /projects)
	CreateProject(ctx echo.Context) error
	// Delete project
	// (DELETE /projects/{projectId})
	DeleteProject(ctx echo.Context, projectID ProjectID) error
	// Get project by ID
	// (GET /projects/{projectId})
	GetProject(ctx echo.Context, projectID ProjectID) error
	// Update project
	// (PUT /projects/{projectId})
	UpdateProject(ctx echo.Context, projectID ProjectID) error
	// Get blocked issues
	// (GET /projects/{projectId}/blocked)
	GetBlockedIssues(ctx echo.Context, projectID ProjectID, params GetBlockedIssuesParams) error
	// List issues in project
	// (GET /projects/{projectId}/issues)
	ListIssues(ctx echo.Context, projectID ProjectID, params ListIssuesParams) error
	// Create a new issue
	// (POST /projects/{projectId}/issues)
	CreateIssue(ctx echo.Context, projectID ProjectID, params CreateIssueParams) error
	// Delete issue
	// (DELETE /projects/{projectId}/issues/{issueId})
	DeleteIssue(ctx echo.Context, projectID ProjectID, issueID IssueID) error
	// Get issue by ID
	// (GET /projects/{projectId}/issues/{issueId})
	GetIssue(ctx echo.Context, projectID ProjectID, issueID IssueID, params GetIssueParams) error
	// Update issue
	// (PUT /projects/{projectId}/issues/{issueId})
	UpdateIssue(ctx echo.Context, projectID ProjectID, issueID IssueID, params UpdateIssueParams) error
	// Close an issue
	// (POST /projects/{projectId}/issues/{issueId}/close)
	CloseIssue(ctx echo.Context, projectID ProjectID, issueID IssueID, params CloseIssueParams) error
	// Get comments for an issue
	// (GET /projects/{projectId}/issues/{issueId}/comments)
	GetComments(ctx echo.Context, projectID ProjectID, issueID IssueID) error
	// Add a comment to an issue
	// (POST /projects/{projectId}/issues/{issueId}/comments)
	AddComment(ctx echo.Context, projectID ProjectID, issueID IssueID, params AddCommentParams) error
	// Delete a comment
	// (DELETE /projects/{projectId}/issues/{issueId}/comments/{commentId})
	DeleteComment(ctx echo.Context, projectID ProjectID, issueID IssueID, commentID int64) error
	// Update a comment
	// (PUT /projects/{projectId}/issues/{issueId}/comments/{commentId})
	UpdateComment(ctx echo.Context, projectID ProjectID, issueID IssueID, commentID int64) error
	// Get issue dependencies and dependents
	// (GET /projects/{projectId}/issues/{issueId}/deps)
	GetDependencies(ctx echo.Context, projectID ProjectID, issueID IssueID) error
	// Add a dependency to an issue
	// (POST /projects/{projectId}/issues/{issueId}/deps)
	AddDependency(ctx echo.Context, projectID ProjectID, issueID IssueID, params AddDependencyParams) error
	// Remove a dependency from an issue
	// (DELETE /projects/{projectId}/issues/{issueId}/deps/{dependsOnId})
	RemoveDependency(ctx echo.Context, projectID ProjectID, issueID IssueID, dependsOnID string, params RemoveDependencyParams) error
	// Get audit events for an issue
	// (GET /projects/{projectId}/issues/{issueId}/events)
	GetEvents(ctx echo.Context, projectID ProjectID, issueID IssueID, params GetEventsParams) error
	// Add a label to an issue
	// (POST /projects/{projectId}/issues/{issueId}/labels)
	AddLabelToIssue(ctx echo.Context, projectID ProjectID, issueID IssueID, params AddLabelToIssueParams) error
	// Remove a label from an issue
	// (DELETE /projects/{projectId}/issues/{issueId}/labels/{labelName})
	RemoveLabelFromIssue(ctx echo.Context, projectID ProjectID, issueID IssueID, labelName string, params RemoveLabelFromIssueParams) error
	// Reopen a closed issue
	// (POST /projects/{projectId}/issues/{issueId}/reopen)
	ReopenIssue(ctx echo.Context, projectID ProjectID, issueID IssueID, params ReopenIssueParams) error
	// Get issues ready to work on (no blocking dependencies)
	// (GET /projects/{projectId}/ready)
	GetReadyWork(ctx echo.Context, projectID ProjectID, params GetReadyWorkParams) error
	// Get project statistics
	// (GET /projects/{projectId}/stats)
	GetProjectStats(ctx echo.Context, projectID ProjectID) error
	// Get issues grouped by teammate role labels
	// (GET /projects/{projectId}/team-context)
	GetTeamContext(ctx echo.Context, projectID ProjectID, params GetTeamContextParams) error
}

ServerInterface represents all server handlers.

func NewStrictHandler

func NewStrictHandler(ssi StrictServerInterface, middlewares []StrictMiddlewareFunc) ServerInterface

type ServerInterfaceWrapper

type ServerInterfaceWrapper struct {
	Handler ServerInterface
}

ServerInterfaceWrapper converts echo contexts to parameters.

func (*ServerInterfaceWrapper) AddComment

func (w *ServerInterfaceWrapper) AddComment(ctx echo.Context) error

AddComment converts echo context to params.

func (*ServerInterfaceWrapper) AddDependency

func (w *ServerInterfaceWrapper) AddDependency(ctx echo.Context) error

AddDependency converts echo context to params.

func (*ServerInterfaceWrapper) AddLabelToIssue

func (w *ServerInterfaceWrapper) AddLabelToIssue(ctx echo.Context) error

AddLabelToIssue converts echo context to params.

func (*ServerInterfaceWrapper) CloseIssue

func (w *ServerInterfaceWrapper) CloseIssue(ctx echo.Context) error

CloseIssue converts echo context to params.

func (*ServerInterfaceWrapper) CreateIssue

func (w *ServerInterfaceWrapper) CreateIssue(ctx echo.Context) error

CreateIssue converts echo context to params.

func (*ServerInterfaceWrapper) CreateLabel

func (w *ServerInterfaceWrapper) CreateLabel(ctx echo.Context) error

CreateLabel converts echo context to params.

func (*ServerInterfaceWrapper) CreateProject added in v0.12.0

func (w *ServerInterfaceWrapper) CreateProject(ctx echo.Context) error

CreateProject converts echo context to params.

func (*ServerInterfaceWrapper) DeleteComment

func (w *ServerInterfaceWrapper) DeleteComment(ctx echo.Context) error

DeleteComment converts echo context to params.

func (*ServerInterfaceWrapper) DeleteIssue

func (w *ServerInterfaceWrapper) DeleteIssue(ctx echo.Context) error

DeleteIssue converts echo context to params.

func (*ServerInterfaceWrapper) DeleteLabel

func (w *ServerInterfaceWrapper) DeleteLabel(ctx echo.Context) error

DeleteLabel converts echo context to params.

func (*ServerInterfaceWrapper) DeleteProject added in v0.12.0

func (w *ServerInterfaceWrapper) DeleteProject(ctx echo.Context) error

DeleteProject converts echo context to params.

func (*ServerInterfaceWrapper) GetBlockedIssues

func (w *ServerInterfaceWrapper) GetBlockedIssues(ctx echo.Context) error

GetBlockedIssues converts echo context to params.

func (*ServerInterfaceWrapper) GetComments

func (w *ServerInterfaceWrapper) GetComments(ctx echo.Context) error

GetComments converts echo context to params.

func (*ServerInterfaceWrapper) GetDependencies

func (w *ServerInterfaceWrapper) GetDependencies(ctx echo.Context) error

GetDependencies converts echo context to params.

func (*ServerInterfaceWrapper) GetEvents

func (w *ServerInterfaceWrapper) GetEvents(ctx echo.Context) error

GetEvents converts echo context to params.

func (*ServerInterfaceWrapper) GetIssue

func (w *ServerInterfaceWrapper) GetIssue(ctx echo.Context) error

GetIssue converts echo context to params.

func (*ServerInterfaceWrapper) GetProject added in v0.12.0

func (w *ServerInterfaceWrapper) GetProject(ctx echo.Context) error

GetProject converts echo context to params.

func (*ServerInterfaceWrapper) GetProjectStats added in v0.12.0

func (w *ServerInterfaceWrapper) GetProjectStats(ctx echo.Context) error

GetProjectStats converts echo context to params.

func (*ServerInterfaceWrapper) GetReadyWork

func (w *ServerInterfaceWrapper) GetReadyWork(ctx echo.Context) error

GetReadyWork converts echo context to params.

func (*ServerInterfaceWrapper) GetTeamContext added in v0.11.0

func (w *ServerInterfaceWrapper) GetTeamContext(ctx echo.Context) error

GetTeamContext converts echo context to params.

func (*ServerInterfaceWrapper) ListIssues

func (w *ServerInterfaceWrapper) ListIssues(ctx echo.Context) error

ListIssues converts echo context to params.

func (*ServerInterfaceWrapper) ListLabels

func (w *ServerInterfaceWrapper) ListLabels(ctx echo.Context) error

ListLabels converts echo context to params.

func (*ServerInterfaceWrapper) ListProjects added in v0.12.0

func (w *ServerInterfaceWrapper) ListProjects(ctx echo.Context) error

ListProjects converts echo context to params.

func (*ServerInterfaceWrapper) RemoveDependency

func (w *ServerInterfaceWrapper) RemoveDependency(ctx echo.Context) error

RemoveDependency converts echo context to params.

func (*ServerInterfaceWrapper) RemoveLabelFromIssue

func (w *ServerInterfaceWrapper) RemoveLabelFromIssue(ctx echo.Context) error

RemoveLabelFromIssue converts echo context to params.

func (*ServerInterfaceWrapper) ReopenIssue

func (w *ServerInterfaceWrapper) ReopenIssue(ctx echo.Context) error

ReopenIssue converts echo context to params.

func (*ServerInterfaceWrapper) UpdateComment

func (w *ServerInterfaceWrapper) UpdateComment(ctx echo.Context) error

UpdateComment converts echo context to params.

func (*ServerInterfaceWrapper) UpdateIssue

func (w *ServerInterfaceWrapper) UpdateIssue(ctx echo.Context) error

UpdateIssue converts echo context to params.

func (*ServerInterfaceWrapper) UpdateLabel

func (w *ServerInterfaceWrapper) UpdateLabel(ctx echo.Context) error

UpdateLabel converts echo context to params.

func (*ServerInterfaceWrapper) UpdateProject added in v0.12.0

func (w *ServerInterfaceWrapper) UpdateProject(ctx echo.Context) error

UpdateProject converts echo context to params.

type Statistics

type Statistics struct {
	AvgLeadTimeHours *float64 `json:"avg_lead_time_hours,omitempty"`
	BlockedIssues    int      `json:"blocked_issues"`
	ClosedIssues     int      `json:"closed_issues"`
	DeferredIssues   int      `json:"deferred_issues"`
	InProgressIssues int      `json:"in_progress_issues"`
	OpenIssues       int      `json:"open_issues"`
	ProjectID        string   `json:"project_id"`
	ReadyIssues      int      `json:"ready_issues"`
	TotalIssues      int      `json:"total_issues"`
}

Statistics defines model for Statistics.

type Status

type Status string

Status defines model for Status.

const (
	StatusBlocked    Status = "blocked"
	StatusClosed     Status = "closed"
	StatusDeferred   Status = "deferred"
	StatusInProgress Status = "in_progress"
	StatusOpen       Status = "open"
)

Defines values for Status.

type StrictHandlerFunc

type StrictHandlerFunc = strictecho.StrictEchoHandlerFunc

type StrictMiddlewareFunc

type StrictMiddlewareFunc = strictecho.StrictEchoMiddlewareFunc

type StrictServerInterface

type StrictServerInterface interface {
	// List all global labels
	// (GET /labels)
	ListLabels(ctx context.Context, request ListLabelsRequestObject) (ListLabelsResponseObject, error)
	// Create a new label
	// (POST /labels)
	CreateLabel(ctx context.Context, request CreateLabelRequestObject) (CreateLabelResponseObject, error)
	// Delete a label
	// (DELETE /labels/{labelName})
	DeleteLabel(ctx context.Context, request DeleteLabelRequestObject) (DeleteLabelResponseObject, error)
	// Update a label
	// (PUT /labels/{labelName})
	UpdateLabel(ctx context.Context, request UpdateLabelRequestObject) (UpdateLabelResponseObject, error)
	// List all projects
	// (GET /projects)
	ListProjects(ctx context.Context, request ListProjectsRequestObject) (ListProjectsResponseObject, error)
	// Create a new project
	// (POST /projects)
	CreateProject(ctx context.Context, request CreateProjectRequestObject) (CreateProjectResponseObject, error)
	// Delete project
	// (DELETE /projects/{projectId})
	DeleteProject(ctx context.Context, request DeleteProjectRequestObject) (DeleteProjectResponseObject, error)
	// Get project by ID
	// (GET /projects/{projectId})
	GetProject(ctx context.Context, request GetProjectRequestObject) (GetProjectResponseObject, error)
	// Update project
	// (PUT /projects/{projectId})
	UpdateProject(ctx context.Context, request UpdateProjectRequestObject) (UpdateProjectResponseObject, error)
	// Get blocked issues
	// (GET /projects/{projectId}/blocked)
	GetBlockedIssues(ctx context.Context, request GetBlockedIssuesRequestObject) (GetBlockedIssuesResponseObject, error)
	// List issues in project
	// (GET /projects/{projectId}/issues)
	ListIssues(ctx context.Context, request ListIssuesRequestObject) (ListIssuesResponseObject, error)
	// Create a new issue
	// (POST /projects/{projectId}/issues)
	CreateIssue(ctx context.Context, request CreateIssueRequestObject) (CreateIssueResponseObject, error)
	// Delete issue
	// (DELETE /projects/{projectId}/issues/{issueId})
	DeleteIssue(ctx context.Context, request DeleteIssueRequestObject) (DeleteIssueResponseObject, error)
	// Get issue by ID
	// (GET /projects/{projectId}/issues/{issueId})
	GetIssue(ctx context.Context, request GetIssueRequestObject) (GetIssueResponseObject, error)
	// Update issue
	// (PUT /projects/{projectId}/issues/{issueId})
	UpdateIssue(ctx context.Context, request UpdateIssueRequestObject) (UpdateIssueResponseObject, error)
	// Close an issue
	// (POST /projects/{projectId}/issues/{issueId}/close)
	CloseIssue(ctx context.Context, request CloseIssueRequestObject) (CloseIssueResponseObject, error)
	// Get comments for an issue
	// (GET /projects/{projectId}/issues/{issueId}/comments)
	GetComments(ctx context.Context, request GetCommentsRequestObject) (GetCommentsResponseObject, error)
	// Add a comment to an issue
	// (POST /projects/{projectId}/issues/{issueId}/comments)
	AddComment(ctx context.Context, request AddCommentRequestObject) (AddCommentResponseObject, error)
	// Delete a comment
	// (DELETE /projects/{projectId}/issues/{issueId}/comments/{commentId})
	DeleteComment(ctx context.Context, request DeleteCommentRequestObject) (DeleteCommentResponseObject, error)
	// Update a comment
	// (PUT /projects/{projectId}/issues/{issueId}/comments/{commentId})
	UpdateComment(ctx context.Context, request UpdateCommentRequestObject) (UpdateCommentResponseObject, error)
	// Get issue dependencies and dependents
	// (GET /projects/{projectId}/issues/{issueId}/deps)
	GetDependencies(ctx context.Context, request GetDependenciesRequestObject) (GetDependenciesResponseObject, error)
	// Add a dependency to an issue
	// (POST /projects/{projectId}/issues/{issueId}/deps)
	AddDependency(ctx context.Context, request AddDependencyRequestObject) (AddDependencyResponseObject, error)
	// Remove a dependency from an issue
	// (DELETE /projects/{projectId}/issues/{issueId}/deps/{dependsOnId})
	RemoveDependency(ctx context.Context, request RemoveDependencyRequestObject) (RemoveDependencyResponseObject, error)
	// Get audit events for an issue
	// (GET /projects/{projectId}/issues/{issueId}/events)
	GetEvents(ctx context.Context, request GetEventsRequestObject) (GetEventsResponseObject, error)
	// Add a label to an issue
	// (POST /projects/{projectId}/issues/{issueId}/labels)
	AddLabelToIssue(ctx context.Context, request AddLabelToIssueRequestObject) (AddLabelToIssueResponseObject, error)
	// Remove a label from an issue
	// (DELETE /projects/{projectId}/issues/{issueId}/labels/{labelName})
	RemoveLabelFromIssue(ctx context.Context, request RemoveLabelFromIssueRequestObject) (RemoveLabelFromIssueResponseObject, error)
	// Reopen a closed issue
	// (POST /projects/{projectId}/issues/{issueId}/reopen)
	ReopenIssue(ctx context.Context, request ReopenIssueRequestObject) (ReopenIssueResponseObject, error)
	// Get issues ready to work on (no blocking dependencies)
	// (GET /projects/{projectId}/ready)
	GetReadyWork(ctx context.Context, request GetReadyWorkRequestObject) (GetReadyWorkResponseObject, error)
	// Get project statistics
	// (GET /projects/{projectId}/stats)
	GetProjectStats(ctx context.Context, request GetProjectStatsRequestObject) (GetProjectStatsResponseObject, error)
	// Get issues grouped by teammate role labels
	// (GET /projects/{projectId}/team-context)
	GetTeamContext(ctx context.Context, request GetTeamContextRequestObject) (GetTeamContextResponseObject, error)
}

StrictServerInterface represents all server handlers.

type TeamContext added in v0.11.0

type TeamContext struct {
	Epic *TeamContextEpic `json:"epic,omitempty"`

	// Project Project ID
	Project string `json:"project"`

	// Roles Issues grouped by teammate role name
	Roles map[string]TeamContextRole `json:"roles"`

	// Unassigned Issues without a teammate label (only present with epic filter)
	Unassigned []TeamContextIssue `json:"unassigned"`
}

TeamContext defines model for TeamContext.

type TeamContextEpic added in v0.11.0

type TeamContextEpic struct {
	ID string `json:"id"`

	// Plan Epic's inline plan text
	Plan  *string `json:"plan,omitempty"`
	Title string  `json:"title"`
}

TeamContextEpic defines model for TeamContextEpic.

type TeamContextIssue added in v0.11.0

type TeamContextIssue struct {
	// Deps IDs of issues this depends on
	Deps *[]string `json:"deps,omitempty"`
	ID   string    `json:"id"`

	// Plan Issue's inline plan text
	Plan     *string `json:"plan,omitempty"`
	Priority int     `json:"priority"`
	Status   string  `json:"status"`
	Title    string  `json:"title"`
	Type     string  `json:"type"`
}

TeamContextIssue defines model for TeamContextIssue.

type TeamContextRole added in v0.11.0

type TeamContextRole struct {
	Issues []TeamContextIssue `json:"issues"`
}

TeamContextRole defines model for TeamContextRole.

type UpdateComment204Response

type UpdateComment204Response struct {
}

func (UpdateComment204Response) VisitUpdateCommentResponse

func (response UpdateComment204Response) VisitUpdateCommentResponse(w http.ResponseWriter) error

type UpdateComment400JSONResponse

type UpdateComment400JSONResponse struct{ BadRequestJSONResponse }

func (UpdateComment400JSONResponse) VisitUpdateCommentResponse

func (response UpdateComment400JSONResponse) VisitUpdateCommentResponse(w http.ResponseWriter) error

type UpdateComment404JSONResponse

type UpdateComment404JSONResponse struct{ NotFoundJSONResponse }

func (UpdateComment404JSONResponse) VisitUpdateCommentResponse

func (response UpdateComment404JSONResponse) VisitUpdateCommentResponse(w http.ResponseWriter) error

type UpdateComment500JSONResponse

type UpdateComment500JSONResponse struct{ InternalErrorJSONResponse }

func (UpdateComment500JSONResponse) VisitUpdateCommentResponse

func (response UpdateComment500JSONResponse) VisitUpdateCommentResponse(w http.ResponseWriter) error

type UpdateCommentJSONRequestBody

type UpdateCommentJSONRequestBody = UpdateCommentRequest

UpdateCommentJSONRequestBody defines body for UpdateComment for application/json ContentType.

type UpdateCommentRequest

type UpdateCommentRequest struct {
	Text string `json:"text"`
}

UpdateCommentRequest defines model for UpdateCommentRequest.

type UpdateCommentRequestObject

type UpdateCommentRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	IssueID   IssueID   `json:"issueId"`
	CommentID int64     `json:"commentId"`
	Body      *UpdateCommentJSONRequestBody
}

type UpdateCommentResponseObject

type UpdateCommentResponseObject interface {
	VisitUpdateCommentResponse(w http.ResponseWriter) error
}

type UpdateIssue200JSONResponse

type UpdateIssue200JSONResponse Issue

func (UpdateIssue200JSONResponse) VisitUpdateIssueResponse

func (response UpdateIssue200JSONResponse) VisitUpdateIssueResponse(w http.ResponseWriter) error

type UpdateIssue400JSONResponse

type UpdateIssue400JSONResponse struct{ BadRequestJSONResponse }

func (UpdateIssue400JSONResponse) VisitUpdateIssueResponse

func (response UpdateIssue400JSONResponse) VisitUpdateIssueResponse(w http.ResponseWriter) error

type UpdateIssue404JSONResponse

type UpdateIssue404JSONResponse struct{ NotFoundJSONResponse }

func (UpdateIssue404JSONResponse) VisitUpdateIssueResponse

func (response UpdateIssue404JSONResponse) VisitUpdateIssueResponse(w http.ResponseWriter) error

type UpdateIssue500JSONResponse

type UpdateIssue500JSONResponse struct{ InternalErrorJSONResponse }

func (UpdateIssue500JSONResponse) VisitUpdateIssueResponse

func (response UpdateIssue500JSONResponse) VisitUpdateIssueResponse(w http.ResponseWriter) error

type UpdateIssueJSONRequestBody

type UpdateIssueJSONRequestBody = UpdateIssueRequest

UpdateIssueJSONRequestBody defines body for UpdateIssue for application/json ContentType.

type UpdateIssueParams

type UpdateIssueParams struct {
	// XActor User performing the action (defaults to "anonymous")
	XActor *ActorHeader `json:"X-Actor,omitempty"`
}

UpdateIssueParams defines parameters for UpdateIssue.

type UpdateIssueRequest

type UpdateIssueRequest struct {
	Assignee    *string    `json:"assignee,omitempty"`
	Description *string    `json:"description,omitempty"`
	ExternalRef *string    `json:"external_ref,omitempty"`
	IssueType   *IssueType `json:"issue_type,omitempty"`
	Priority    *int       `json:"priority,omitempty"`
	Status      *Status    `json:"status,omitempty"`
	Title       *string    `json:"title,omitempty"`
}

UpdateIssueRequest defines model for UpdateIssueRequest.

type UpdateIssueRequestObject

type UpdateIssueRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	IssueID   IssueID   `json:"issueId"`
	Params    UpdateIssueParams
	Body      *UpdateIssueJSONRequestBody
}

type UpdateIssueResponseObject

type UpdateIssueResponseObject interface {
	VisitUpdateIssueResponse(w http.ResponseWriter) error
}

type UpdateLabel200JSONResponse

type UpdateLabel200JSONResponse Label

func (UpdateLabel200JSONResponse) VisitUpdateLabelResponse

func (response UpdateLabel200JSONResponse) VisitUpdateLabelResponse(w http.ResponseWriter) error

type UpdateLabel400JSONResponse

type UpdateLabel400JSONResponse struct{ BadRequestJSONResponse }

func (UpdateLabel400JSONResponse) VisitUpdateLabelResponse

func (response UpdateLabel400JSONResponse) VisitUpdateLabelResponse(w http.ResponseWriter) error

type UpdateLabel404JSONResponse

type UpdateLabel404JSONResponse struct{ NotFoundJSONResponse }

func (UpdateLabel404JSONResponse) VisitUpdateLabelResponse

func (response UpdateLabel404JSONResponse) VisitUpdateLabelResponse(w http.ResponseWriter) error

type UpdateLabel500JSONResponse

type UpdateLabel500JSONResponse struct{ InternalErrorJSONResponse }

func (UpdateLabel500JSONResponse) VisitUpdateLabelResponse

func (response UpdateLabel500JSONResponse) VisitUpdateLabelResponse(w http.ResponseWriter) error

type UpdateLabelJSONRequestBody

type UpdateLabelJSONRequestBody = UpdateLabelRequest

UpdateLabelJSONRequestBody defines body for UpdateLabel for application/json ContentType.

type UpdateLabelRequest

type UpdateLabelRequest struct {
	Color       *string `json:"color,omitempty"`
	Description *string `json:"description,omitempty"`
}

UpdateLabelRequest defines model for UpdateLabelRequest.

type UpdateLabelRequestObject

type UpdateLabelRequestObject struct {
	LabelName string `json:"labelName"`
	Body      *UpdateLabelJSONRequestBody
}

type UpdateLabelResponseObject

type UpdateLabelResponseObject interface {
	VisitUpdateLabelResponse(w http.ResponseWriter) error
}

type UpdateProject200JSONResponse added in v0.12.0

type UpdateProject200JSONResponse Project

func (UpdateProject200JSONResponse) VisitUpdateProjectResponse added in v0.12.0

func (response UpdateProject200JSONResponse) VisitUpdateProjectResponse(w http.ResponseWriter) error

type UpdateProject400JSONResponse added in v0.12.0

type UpdateProject400JSONResponse struct{ BadRequestJSONResponse }

func (UpdateProject400JSONResponse) VisitUpdateProjectResponse added in v0.12.0

func (response UpdateProject400JSONResponse) VisitUpdateProjectResponse(w http.ResponseWriter) error

type UpdateProject404JSONResponse added in v0.12.0

type UpdateProject404JSONResponse struct{ NotFoundJSONResponse }

func (UpdateProject404JSONResponse) VisitUpdateProjectResponse added in v0.12.0

func (response UpdateProject404JSONResponse) VisitUpdateProjectResponse(w http.ResponseWriter) error

type UpdateProject500JSONResponse added in v0.12.0

type UpdateProject500JSONResponse struct{ InternalErrorJSONResponse }

func (UpdateProject500JSONResponse) VisitUpdateProjectResponse added in v0.12.0

func (response UpdateProject500JSONResponse) VisitUpdateProjectResponse(w http.ResponseWriter) error

type UpdateProjectJSONRequestBody added in v0.12.0

type UpdateProjectJSONRequestBody = UpdateProjectRequest

UpdateProjectJSONRequestBody defines body for UpdateProject for application/json ContentType.

type UpdateProjectRequest added in v0.12.0

type UpdateProjectRequest struct {
	// Description New description
	Description *string `json:"description,omitempty"`

	// Name New display name
	Name *string `json:"name,omitempty"`

	// Path New associated directory path
	Path *string `json:"path,omitempty"`
}

UpdateProjectRequest defines model for UpdateProjectRequest.

type UpdateProjectRequestObject added in v0.12.0

type UpdateProjectRequestObject struct {
	ProjectID ProjectID `json:"projectId"`
	Body      *UpdateProjectJSONRequestBody
}

type UpdateProjectResponseObject added in v0.12.0

type UpdateProjectResponseObject interface {
	VisitUpdateProjectResponse(w http.ResponseWriter) error
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL