api

package
v0.11.0-rc5 Latest Latest
Warning

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

Go to latest
Published: Mar 8, 2026 License: MIT Imports: 26 Imported by: 0

Documentation

Overview

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.

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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	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"`

	// 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"`
	WorkspaceID string    `json:"workspace_id"`
}

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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	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 CreateWorkspace201JSONResponse

type CreateWorkspace201JSONResponse Workspace

func (CreateWorkspace201JSONResponse) VisitCreateWorkspaceResponse

func (response CreateWorkspace201JSONResponse) VisitCreateWorkspaceResponse(w http.ResponseWriter) error

type CreateWorkspace400JSONResponse

type CreateWorkspace400JSONResponse struct{ BadRequestJSONResponse }

func (CreateWorkspace400JSONResponse) VisitCreateWorkspaceResponse

func (response CreateWorkspace400JSONResponse) VisitCreateWorkspaceResponse(w http.ResponseWriter) error

type CreateWorkspace500JSONResponse

type CreateWorkspace500JSONResponse struct{ InternalErrorJSONResponse }

func (CreateWorkspace500JSONResponse) VisitCreateWorkspaceResponse

func (response CreateWorkspace500JSONResponse) VisitCreateWorkspaceResponse(w http.ResponseWriter) error

type CreateWorkspaceJSONRequestBody

type CreateWorkspaceJSONRequestBody = CreateWorkspaceRequest

CreateWorkspaceJSONRequestBody defines body for CreateWorkspace for application/json ContentType.

type CreateWorkspaceRequest

type CreateWorkspaceRequest struct {
	// Description Workspace 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"`
}

CreateWorkspaceRequest defines model for CreateWorkspaceRequest.

type CreateWorkspaceRequestObject

type CreateWorkspaceRequestObject struct {
	Body *CreateWorkspaceJSONRequestBody
}

type CreateWorkspaceResponseObject

type CreateWorkspaceResponseObject interface {
	VisitCreateWorkspaceResponse(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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	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 DeleteWorkspace204Response

type DeleteWorkspace204Response struct {
}

func (DeleteWorkspace204Response) VisitDeleteWorkspaceResponse

func (response DeleteWorkspace204Response) VisitDeleteWorkspaceResponse(w http.ResponseWriter) error

type DeleteWorkspace404JSONResponse

type DeleteWorkspace404JSONResponse struct{ NotFoundJSONResponse }

func (DeleteWorkspace404JSONResponse) VisitDeleteWorkspaceResponse

func (response DeleteWorkspace404JSONResponse) VisitDeleteWorkspaceResponse(w http.ResponseWriter) error

type DeleteWorkspace500JSONResponse

type DeleteWorkspace500JSONResponse struct{ InternalErrorJSONResponse }

func (DeleteWorkspace500JSONResponse) VisitDeleteWorkspaceResponse

func (response DeleteWorkspace500JSONResponse) VisitDeleteWorkspaceResponse(w http.ResponseWriter) error

type DeleteWorkspaceRequestObject

type DeleteWorkspaceRequestObject struct {
	WorkspaceID WorkspaceID `json:"workspaceId"`
}

type DeleteWorkspaceResponseObject

type DeleteWorkspaceResponseObject interface {
	VisitDeleteWorkspaceResponse(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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	IssueID     IssueID     `json:"issueId"`
	Params      GetIssueParams
}

type GetIssueResponseObject

type GetIssueResponseObject interface {
	VisitGetIssueResponse(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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	Params      GetTeamContextParams
}

type GetTeamContextResponseObject added in v0.11.0

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

type GetWorkspace200JSONResponse

type GetWorkspace200JSONResponse Workspace

func (GetWorkspace200JSONResponse) VisitGetWorkspaceResponse

func (response GetWorkspace200JSONResponse) VisitGetWorkspaceResponse(w http.ResponseWriter) error

type GetWorkspace404JSONResponse

type GetWorkspace404JSONResponse struct{ NotFoundJSONResponse }

func (GetWorkspace404JSONResponse) VisitGetWorkspaceResponse

func (response GetWorkspace404JSONResponse) VisitGetWorkspaceResponse(w http.ResponseWriter) error

type GetWorkspace500JSONResponse

type GetWorkspace500JSONResponse struct{ InternalErrorJSONResponse }

func (GetWorkspace500JSONResponse) VisitGetWorkspaceResponse

func (response GetWorkspace500JSONResponse) VisitGetWorkspaceResponse(w http.ResponseWriter) error

type GetWorkspaceRequestObject

type GetWorkspaceRequestObject struct {
	WorkspaceID WorkspaceID `json:"workspaceId"`
}

type GetWorkspaceResponseObject

type GetWorkspaceResponseObject interface {
	VisitGetWorkspaceResponse(w http.ResponseWriter) error
}

type GetWorkspaceStats200JSONResponse

type GetWorkspaceStats200JSONResponse Statistics

func (GetWorkspaceStats200JSONResponse) VisitGetWorkspaceStatsResponse

func (response GetWorkspaceStats200JSONResponse) VisitGetWorkspaceStatsResponse(w http.ResponseWriter) error

type GetWorkspaceStats404JSONResponse

type GetWorkspaceStats404JSONResponse struct{ NotFoundJSONResponse }

func (GetWorkspaceStats404JSONResponse) VisitGetWorkspaceStatsResponse

func (response GetWorkspaceStats404JSONResponse) VisitGetWorkspaceStatsResponse(w http.ResponseWriter) error

type GetWorkspaceStats500JSONResponse

type GetWorkspaceStats500JSONResponse struct{ InternalErrorJSONResponse }

func (GetWorkspaceStats500JSONResponse) VisitGetWorkspaceStatsResponse

func (response GetWorkspaceStats500JSONResponse) VisitGetWorkspaceStatsResponse(w http.ResponseWriter) error

type GetWorkspaceStatsRequestObject

type GetWorkspaceStatsRequestObject struct {
	WorkspaceID WorkspaceID `json:"workspaceId"`
}

type GetWorkspaceStatsResponseObject

type GetWorkspaceStatsResponseObject interface {
	VisitGetWorkspaceStatsResponse(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"`

	// 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"`
	WorkspaceID string    `json:"workspace_id"`
}

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"`

	// 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"`
	WorkspaceID string    `json:"workspace_id"`
}

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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	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 ListWorkspaces200JSONResponse

type ListWorkspaces200JSONResponse []Workspace

func (ListWorkspaces200JSONResponse) VisitListWorkspacesResponse

func (response ListWorkspaces200JSONResponse) VisitListWorkspacesResponse(w http.ResponseWriter) error

type ListWorkspaces500JSONResponse

type ListWorkspaces500JSONResponse struct{ InternalErrorJSONResponse }

func (ListWorkspaces500JSONResponse) VisitListWorkspacesResponse

func (response ListWorkspaces500JSONResponse) VisitListWorkspacesResponse(w http.ResponseWriter) error

type ListWorkspacesRequestObject

type ListWorkspacesRequestObject struct {
}

type ListWorkspacesResponseObject

type ListWorkspacesResponseObject interface {
	VisitListWorkspacesResponse(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 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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	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 workspaces
	// (GET /workspaces)
	ListWorkspaces(ctx echo.Context) error
	// Create a new workspace
	// (POST /workspaces)
	CreateWorkspace(ctx echo.Context) error
	// Delete workspace
	// (DELETE /workspaces/{workspaceId})
	DeleteWorkspace(ctx echo.Context, workspaceID WorkspaceID) error
	// Get workspace by ID
	// (GET /workspaces/{workspaceId})
	GetWorkspace(ctx echo.Context, workspaceID WorkspaceID) error
	// Update workspace
	// (PUT /workspaces/{workspaceId})
	UpdateWorkspace(ctx echo.Context, workspaceID WorkspaceID) error
	// Get blocked issues
	// (GET /workspaces/{workspaceId}/blocked)
	GetBlockedIssues(ctx echo.Context, workspaceID WorkspaceID, params GetBlockedIssuesParams) error
	// List issues in workspace
	// (GET /workspaces/{workspaceId}/issues)
	ListIssues(ctx echo.Context, workspaceID WorkspaceID, params ListIssuesParams) error
	// Create a new issue
	// (POST /workspaces/{workspaceId}/issues)
	CreateIssue(ctx echo.Context, workspaceID WorkspaceID, params CreateIssueParams) error
	// Delete issue
	// (DELETE /workspaces/{workspaceId}/issues/{issueId})
	DeleteIssue(ctx echo.Context, workspaceID WorkspaceID, issueID IssueID) error
	// Get issue by ID
	// (GET /workspaces/{workspaceId}/issues/{issueId})
	GetIssue(ctx echo.Context, workspaceID WorkspaceID, issueID IssueID, params GetIssueParams) error
	// Update issue
	// (PUT /workspaces/{workspaceId}/issues/{issueId})
	UpdateIssue(ctx echo.Context, workspaceID WorkspaceID, issueID IssueID, params UpdateIssueParams) error
	// Close an issue
	// (POST /workspaces/{workspaceId}/issues/{issueId}/close)
	CloseIssue(ctx echo.Context, workspaceID WorkspaceID, issueID IssueID, params CloseIssueParams) error
	// Get comments for an issue
	// (GET /workspaces/{workspaceId}/issues/{issueId}/comments)
	GetComments(ctx echo.Context, workspaceID WorkspaceID, issueID IssueID) error
	// Add a comment to an issue
	// (POST /workspaces/{workspaceId}/issues/{issueId}/comments)
	AddComment(ctx echo.Context, workspaceID WorkspaceID, issueID IssueID, params AddCommentParams) error
	// Delete a comment
	// (DELETE /workspaces/{workspaceId}/issues/{issueId}/comments/{commentId})
	DeleteComment(ctx echo.Context, workspaceID WorkspaceID, issueID IssueID, commentID int64) error
	// Update a comment
	// (PUT /workspaces/{workspaceId}/issues/{issueId}/comments/{commentId})
	UpdateComment(ctx echo.Context, workspaceID WorkspaceID, issueID IssueID, commentID int64) error
	// Get issue dependencies and dependents
	// (GET /workspaces/{workspaceId}/issues/{issueId}/deps)
	GetDependencies(ctx echo.Context, workspaceID WorkspaceID, issueID IssueID) error
	// Add a dependency to an issue
	// (POST /workspaces/{workspaceId}/issues/{issueId}/deps)
	AddDependency(ctx echo.Context, workspaceID WorkspaceID, issueID IssueID, params AddDependencyParams) error
	// Remove a dependency from an issue
	// (DELETE /workspaces/{workspaceId}/issues/{issueId}/deps/{dependsOnId})
	RemoveDependency(ctx echo.Context, workspaceID WorkspaceID, issueID IssueID, dependsOnID string, params RemoveDependencyParams) error
	// Get audit events for an issue
	// (GET /workspaces/{workspaceId}/issues/{issueId}/events)
	GetEvents(ctx echo.Context, workspaceID WorkspaceID, issueID IssueID, params GetEventsParams) error
	// Add a label to an issue
	// (POST /workspaces/{workspaceId}/issues/{issueId}/labels)
	AddLabelToIssue(ctx echo.Context, workspaceID WorkspaceID, issueID IssueID, params AddLabelToIssueParams) error
	// Remove a label from an issue
	// (DELETE /workspaces/{workspaceId}/issues/{issueId}/labels/{labelName})
	RemoveLabelFromIssue(ctx echo.Context, workspaceID WorkspaceID, issueID IssueID, labelName string, params RemoveLabelFromIssueParams) error
	// Reopen a closed issue
	// (POST /workspaces/{workspaceId}/issues/{issueId}/reopen)
	ReopenIssue(ctx echo.Context, workspaceID WorkspaceID, issueID IssueID, params ReopenIssueParams) error
	// Get issues ready to work on (no blocking dependencies)
	// (GET /workspaces/{workspaceId}/ready)
	GetReadyWork(ctx echo.Context, workspaceID WorkspaceID, params GetReadyWorkParams) error
	// Get workspace statistics
	// (GET /workspaces/{workspaceId}/stats)
	GetWorkspaceStats(ctx echo.Context, workspaceID WorkspaceID) error
	// Get issues grouped by teammate role labels
	// (GET /workspaces/{workspaceId}/team-context)
	GetTeamContext(ctx echo.Context, workspaceID WorkspaceID, 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) CreateWorkspace

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

CreateWorkspace 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) DeleteWorkspace

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

DeleteWorkspace 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) 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) GetWorkspace

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

GetWorkspace converts echo context to params.

func (*ServerInterfaceWrapper) GetWorkspaceStats

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

GetWorkspaceStats 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) ListWorkspaces

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

ListWorkspaces 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) UpdateWorkspace

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

UpdateWorkspace 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"`
	ReadyIssues      int      `json:"ready_issues"`
	TotalIssues      int      `json:"total_issues"`
	WorkspaceID      string   `json:"workspace_id"`
}

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 workspaces
	// (GET /workspaces)
	ListWorkspaces(ctx context.Context, request ListWorkspacesRequestObject) (ListWorkspacesResponseObject, error)
	// Create a new workspace
	// (POST /workspaces)
	CreateWorkspace(ctx context.Context, request CreateWorkspaceRequestObject) (CreateWorkspaceResponseObject, error)
	// Delete workspace
	// (DELETE /workspaces/{workspaceId})
	DeleteWorkspace(ctx context.Context, request DeleteWorkspaceRequestObject) (DeleteWorkspaceResponseObject, error)
	// Get workspace by ID
	// (GET /workspaces/{workspaceId})
	GetWorkspace(ctx context.Context, request GetWorkspaceRequestObject) (GetWorkspaceResponseObject, error)
	// Update workspace
	// (PUT /workspaces/{workspaceId})
	UpdateWorkspace(ctx context.Context, request UpdateWorkspaceRequestObject) (UpdateWorkspaceResponseObject, error)
	// Get blocked issues
	// (GET /workspaces/{workspaceId}/blocked)
	GetBlockedIssues(ctx context.Context, request GetBlockedIssuesRequestObject) (GetBlockedIssuesResponseObject, error)
	// List issues in workspace
	// (GET /workspaces/{workspaceId}/issues)
	ListIssues(ctx context.Context, request ListIssuesRequestObject) (ListIssuesResponseObject, error)
	// Create a new issue
	// (POST /workspaces/{workspaceId}/issues)
	CreateIssue(ctx context.Context, request CreateIssueRequestObject) (CreateIssueResponseObject, error)
	// Delete issue
	// (DELETE /workspaces/{workspaceId}/issues/{issueId})
	DeleteIssue(ctx context.Context, request DeleteIssueRequestObject) (DeleteIssueResponseObject, error)
	// Get issue by ID
	// (GET /workspaces/{workspaceId}/issues/{issueId})
	GetIssue(ctx context.Context, request GetIssueRequestObject) (GetIssueResponseObject, error)
	// Update issue
	// (PUT /workspaces/{workspaceId}/issues/{issueId})
	UpdateIssue(ctx context.Context, request UpdateIssueRequestObject) (UpdateIssueResponseObject, error)
	// Close an issue
	// (POST /workspaces/{workspaceId}/issues/{issueId}/close)
	CloseIssue(ctx context.Context, request CloseIssueRequestObject) (CloseIssueResponseObject, error)
	// Get comments for an issue
	// (GET /workspaces/{workspaceId}/issues/{issueId}/comments)
	GetComments(ctx context.Context, request GetCommentsRequestObject) (GetCommentsResponseObject, error)
	// Add a comment to an issue
	// (POST /workspaces/{workspaceId}/issues/{issueId}/comments)
	AddComment(ctx context.Context, request AddCommentRequestObject) (AddCommentResponseObject, error)
	// Delete a comment
	// (DELETE /workspaces/{workspaceId}/issues/{issueId}/comments/{commentId})
	DeleteComment(ctx context.Context, request DeleteCommentRequestObject) (DeleteCommentResponseObject, error)
	// Update a comment
	// (PUT /workspaces/{workspaceId}/issues/{issueId}/comments/{commentId})
	UpdateComment(ctx context.Context, request UpdateCommentRequestObject) (UpdateCommentResponseObject, error)
	// Get issue dependencies and dependents
	// (GET /workspaces/{workspaceId}/issues/{issueId}/deps)
	GetDependencies(ctx context.Context, request GetDependenciesRequestObject) (GetDependenciesResponseObject, error)
	// Add a dependency to an issue
	// (POST /workspaces/{workspaceId}/issues/{issueId}/deps)
	AddDependency(ctx context.Context, request AddDependencyRequestObject) (AddDependencyResponseObject, error)
	// Remove a dependency from an issue
	// (DELETE /workspaces/{workspaceId}/issues/{issueId}/deps/{dependsOnId})
	RemoveDependency(ctx context.Context, request RemoveDependencyRequestObject) (RemoveDependencyResponseObject, error)
	// Get audit events for an issue
	// (GET /workspaces/{workspaceId}/issues/{issueId}/events)
	GetEvents(ctx context.Context, request GetEventsRequestObject) (GetEventsResponseObject, error)
	// Add a label to an issue
	// (POST /workspaces/{workspaceId}/issues/{issueId}/labels)
	AddLabelToIssue(ctx context.Context, request AddLabelToIssueRequestObject) (AddLabelToIssueResponseObject, error)
	// Remove a label from an issue
	// (DELETE /workspaces/{workspaceId}/issues/{issueId}/labels/{labelName})
	RemoveLabelFromIssue(ctx context.Context, request RemoveLabelFromIssueRequestObject) (RemoveLabelFromIssueResponseObject, error)
	// Reopen a closed issue
	// (POST /workspaces/{workspaceId}/issues/{issueId}/reopen)
	ReopenIssue(ctx context.Context, request ReopenIssueRequestObject) (ReopenIssueResponseObject, error)
	// Get issues ready to work on (no blocking dependencies)
	// (GET /workspaces/{workspaceId}/ready)
	GetReadyWork(ctx context.Context, request GetReadyWorkRequestObject) (GetReadyWorkResponseObject, error)
	// Get workspace statistics
	// (GET /workspaces/{workspaceId}/stats)
	GetWorkspaceStats(ctx context.Context, request GetWorkspaceStatsRequestObject) (GetWorkspaceStatsResponseObject, error)
	// Get issues grouped by teammate role labels
	// (GET /workspaces/{workspaceId}/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"`

	// 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"`

	// Workspace Workspace ID
	Workspace string `json:"workspace"`
}

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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	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 {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	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 UpdateWorkspace200JSONResponse

type UpdateWorkspace200JSONResponse Workspace

func (UpdateWorkspace200JSONResponse) VisitUpdateWorkspaceResponse

func (response UpdateWorkspace200JSONResponse) VisitUpdateWorkspaceResponse(w http.ResponseWriter) error

type UpdateWorkspace400JSONResponse

type UpdateWorkspace400JSONResponse struct{ BadRequestJSONResponse }

func (UpdateWorkspace400JSONResponse) VisitUpdateWorkspaceResponse

func (response UpdateWorkspace400JSONResponse) VisitUpdateWorkspaceResponse(w http.ResponseWriter) error

type UpdateWorkspace404JSONResponse

type UpdateWorkspace404JSONResponse struct{ NotFoundJSONResponse }

func (UpdateWorkspace404JSONResponse) VisitUpdateWorkspaceResponse

func (response UpdateWorkspace404JSONResponse) VisitUpdateWorkspaceResponse(w http.ResponseWriter) error

type UpdateWorkspace500JSONResponse

type UpdateWorkspace500JSONResponse struct{ InternalErrorJSONResponse }

func (UpdateWorkspace500JSONResponse) VisitUpdateWorkspaceResponse

func (response UpdateWorkspace500JSONResponse) VisitUpdateWorkspaceResponse(w http.ResponseWriter) error

type UpdateWorkspaceJSONRequestBody

type UpdateWorkspaceJSONRequestBody = UpdateWorkspaceRequest

UpdateWorkspaceJSONRequestBody defines body for UpdateWorkspace for application/json ContentType.

type UpdateWorkspaceRequest

type UpdateWorkspaceRequest 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"`
}

UpdateWorkspaceRequest defines model for UpdateWorkspaceRequest.

type UpdateWorkspaceRequestObject

type UpdateWorkspaceRequestObject struct {
	WorkspaceID WorkspaceID `json:"workspaceId"`
	Body        *UpdateWorkspaceJSONRequestBody
}

type UpdateWorkspaceResponseObject

type UpdateWorkspaceResponseObject interface {
	VisitUpdateWorkspaceResponse(w http.ResponseWriter) error
}

type Workspace

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

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

	// ID Unique workspace ID (e.g., "ws-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"`
}

Workspace defines model for Workspace.

type WorkspaceID

type WorkspaceID = string

WorkspaceID defines model for WorkspaceId.

Jump to

Keyboard shortcuts

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