Files
Jacob Mathison e3d9047143 Merged in jmathison/DEVOPS-722 (pull request #226)
DEVOPS-722 enforce team management visibility

* DEVOPS-722 enforce team management visibility

* DEVOPS-722 reduce admin user list complexity

* DEVOPS-722 cover admin access helpers

* DEVOPS-722 address team management PR feedback

* DEVOPS-722 fix admin access tests in CI

* DEVOPS-722 fix remaining admin PR feedback
2026-05-12 16:49:12 +00:00

4671 lines
206 KiB
Go

// Package queryapi provides primitives to interact with the openapi HTTP API.
//
// Code generated by github.com/oapi-codegen/oapi-codegen/v2 version 2.4.1 DO NOT EDIT.
package queryapi
import (
"bytes"
"compress/gzip"
"encoding/base64"
"fmt"
"net/http"
"net/url"
"path"
"strings"
"time"
"github.com/getkin/kin-openapi/openapi3"
"github.com/labstack/echo/v4"
"github.com/oapi-codegen/nullable"
"github.com/oapi-codegen/runtime"
openapi_types "github.com/oapi-codegen/runtime/types"
)
const (
CognitoAuthScopes = "cognitoAuth.Scopes"
JwtAuthScopes = "jwtAuth.Scopes"
)
// Defines values for AdminUserActionResponseAction.
const (
Disable AdminUserActionResponseAction = "disable"
Enable AdminUserActionResponseAction = "enable"
)
// Defines values for BatchDocumentOutcomeOutcome.
const (
CleanFailed BatchDocumentOutcomeOutcome = "clean_failed"
CleanPassed BatchDocumentOutcomeOutcome = "clean_passed"
Duplicate BatchDocumentOutcomeOutcome = "duplicate"
FailedOpen BatchDocumentOutcomeOutcome = "failed_open"
FailedRead BatchDocumentOutcomeOutcome = "failed_read"
FailedS3Upload BatchDocumentOutcomeOutcome = "failed_s3_upload"
FailedUpload BatchDocumentOutcomeOutcome = "failed_upload"
InitComplete BatchDocumentOutcomeOutcome = "init_complete"
InitDuplicate BatchDocumentOutcomeOutcome = "init_duplicate"
InvalidType BatchDocumentOutcomeOutcome = "invalid_type"
Submitted BatchDocumentOutcomeOutcome = "submitted"
SyncComplete BatchDocumentOutcomeOutcome = "sync_complete"
SyncSkipped BatchDocumentOutcomeOutcome = "sync_skipped"
)
// Defines values for BatchStatus.
const (
BatchStatusCancelled BatchStatus = "cancelled"
BatchStatusCompleted BatchStatus = "completed"
BatchStatusFailed BatchStatus = "failed"
BatchStatusProcessing BatchStatus = "processing"
)
// Defines values for BotTurnPreviewStatus.
const (
BotTurnPreviewStatusAbandoned BotTurnPreviewStatus = "abandoned"
BotTurnPreviewStatusCompleted BotTurnPreviewStatus = "completed"
BotTurnPreviewStatusErrored BotTurnPreviewStatus = "errored"
BotTurnPreviewStatusInFlight BotTurnPreviewStatus = "in_flight"
BotTurnPreviewStatusSessionDeleted BotTurnPreviewStatus = "session_deleted"
)
// Defines values for BotTurnResponseStatus.
const (
BotTurnResponseStatusAbandoned BotTurnResponseStatus = "abandoned"
BotTurnResponseStatusCompleted BotTurnResponseStatus = "completed"
BotTurnResponseStatusErrored BotTurnResponseStatus = "errored"
BotTurnResponseStatusInFlight BotTurnResponseStatus = "in_flight"
BotTurnResponseStatusSessionDeleted BotTurnResponseStatus = "session_deleted"
)
// Defines values for ClientStatus.
const (
INSYNC ClientStatus = "IN_SYNC"
NOTSYNCED ClientStatus = "NOT_SYNCED"
NOTSYNCING ClientStatus = "NOT_SYNCING"
)
// Defines values for ExportStatus.
const (
ExportStatusCompleted ExportStatus = "completed"
ExportStatusFailed ExportStatus = "failed"
ExportStatusInProgress ExportStatus = "in_progress"
)
// Defines values for FieldFilterCondition.
const (
ClosedInterval FieldFilterCondition = "closed_interval"
Exclude FieldFilterCondition = "exclude"
GreaterThan FieldFilterCondition = "greater_than"
Include FieldFilterCondition = "include"
LeftClosedInterval FieldFilterCondition = "left_closed_interval"
LessThan FieldFilterCondition = "less_than"
OpenInterval FieldFilterCondition = "open_interval"
RightClosedInterval FieldFilterCondition = "right_closed_interval"
)
// Defines values for SchemaStatus.
const (
SchemaStatusActive SchemaStatus = "active"
SchemaStatusRetired SchemaStatus = "retired"
SchemaStatusSuperseded SchemaStatus = "superseded"
)
// Defines values for ListAdminUsersParamsStatus.
const (
All ListAdminUsersParamsStatus = "all"
Disabled ListAdminUsersParamsStatus = "disabled"
Enabled ListAdminUsersParamsStatus = "enabled"
)
// Defines values for ListAdminUsersParamsSortBy.
const (
CreatedAt ListAdminUsersParamsSortBy = "created_at"
Email ListAdminUsersParamsSortBy = "email"
LastName ListAdminUsersParamsSortBy = "last_name"
)
// Defines values for ListAdminUsersParamsSortOrder.
const (
Asc ListAdminUsersParamsSortOrder = "asc"
Desc ListAdminUsersParamsSortOrder = "desc"
)
// Defines values for ListCustomSchemasParamsStatus.
const (
ListCustomSchemasParamsStatusActive ListCustomSchemasParamsStatus = "active"
ListCustomSchemasParamsStatusAny ListCustomSchemasParamsStatus = "any"
ListCustomSchemasParamsStatusRetired ListCustomSchemasParamsStatus = "retired"
ListCustomSchemasParamsStatusSuperseded ListCustomSchemasParamsStatus = "superseded"
)
// AdminUserActionResponse Response for user enable/disable actions with success status and timestamp
type AdminUserActionResponse struct {
// Action Action performed
Action AdminUserActionResponseAction `json:"action"`
// CognitoSubjectId Cognito subject identifier for the action response
CognitoSubjectId *string `json:"cognito_subject_id,omitempty"`
// Email Email of the user acted upon
Email openapi_types.Email `json:"email"`
// Success Whether the action succeeded
Success bool `json:"success"`
// Timestamp Timestamp of the action
Timestamp *time.Time `json:"timestamp,omitempty"`
}
// AdminUserActionResponseAction Action performed
type AdminUserActionResponseAction string
// AdminUserCreate Request body for creating a new user with email, name, and role assignments
type AdminUserCreate struct {
// Email User email address (used as Cognito username)
Email openapi_types.Email `json:"email"`
// FirstName User's given name for account creation
FirstName string `json:"first_name"`
// LastName User's family name for account creation
LastName string `json:"last_name"`
// Roles List of role keys to assign in Permit.io (e.g., super_admin, user_admin, auditor, client_user). Roles must exist in your Permit.io environment. Invalid roles fail silently - check roles_assigned in response.
Roles []string `json:"roles"`
}
// AdminUserCreateResponse Response after creating a user, including Cognito subject ID and sync status
type AdminUserCreateResponse struct {
// CognitoSubjectId Created user's Cognito unique subject identifier
CognitoSubjectId string `json:"cognito_subject_id"`
// CreatedAt Timestamp when the user was created in the system
CreatedAt *time.Time `json:"created_at,omitempty"`
// Email User email address
Email openapi_types.Email `json:"email"`
// Enabled Whether the created user is enabled in Cognito
Enabled *bool `json:"enabled,omitempty"`
// FirstName Created user's given name
FirstName *string `json:"first_name,omitempty"`
// LastName Created user's family name
LastName *string `json:"last_name,omitempty"`
// PermitSynced Whether user was successfully created in Permit.io authorization system. If false, user exists in Cognito (can authenticate) but not in Permit.io (has no authorization/permissions). Manual sync or retry may be required.
PermitSynced bool `json:"permit_synced"`
// RolesAssigned Roles that were successfully assigned in Permit.io. May be a subset of requested roles if some failed. Compare with requested roles array to detect assignment failures. If null or empty, no roles were assigned (user has no permissions). Only present if permit_synced is true.
RolesAssigned *[]string `json:"roles_assigned,omitempty"`
// Status Cognito user status
Status string `json:"status"`
}
// AdminUserDeleteResponse Response for user deletion with status from each system (Cognito and Permit.io)
type AdminUserDeleteResponse struct {
// CognitoSubjectId Cognito subject identifier of the deleted user
CognitoSubjectId *string `json:"cognito_subject_id,omitempty"`
// DeletedFrom Deletion status from each system
DeletedFrom struct {
// Cognito Whether user was deleted from Cognito
Cognito bool `json:"cognito"`
// Permit Whether user was deleted from Permit.io
Permit bool `json:"permit"`
} `json:"deleted_from"`
// Email Email of the deleted user
Email openapi_types.Email `json:"email"`
// Success Whether the deletion succeeded
Success bool `json:"success"`
// Timestamp Timestamp of the deletion
Timestamp *time.Time `json:"timestamp,omitempty"`
}
// AdminUserDetails Complete user information from Cognito and Permit.io including roles and timestamps
type AdminUserDetails struct {
// CognitoSubjectId User's Cognito unique subject identifier from authentication system
CognitoSubjectId string `json:"cognito_subject_id"`
// CreatedAt Timestamp when the user account was created
CreatedAt *time.Time `json:"created_at,omitempty"`
// Email Email address of the user account
Email openapi_types.Email `json:"email"`
// Enabled Current enabled status of the user in Cognito
Enabled bool `json:"enabled"`
// FirstName User's given name retrieved from Cognito
FirstName *string `json:"first_name,omitempty"`
// LastName User's family name retrieved from Cognito
LastName *string `json:"last_name,omitempty"`
// Roles Roles assigned in Permit.io. Populated by GET /admin/users and GET /admin/users/{email} so Team Management clients can enforce role-based visibility and action rules.
Roles *[]string `json:"roles,omitempty"`
// Status Current Cognito user account status
Status string `json:"status"`
// UpdatedAt Timestamp of last update
UpdatedAt *time.Time `json:"updated_at,omitempty"`
}
// AdminUserList Paginated list of users with total count and pagination metadata
type AdminUserList struct {
// HasMore Whether more pages are available
HasMore *bool `json:"has_more,omitempty"`
// Page Current page number
Page int32 `json:"page"`
// PageSize Number of users per page
PageSize int32 `json:"page_size"`
// Total Total number of users matching filter
Total int32 `json:"total"`
// Users List of users for current page
Users []AdminUserDetails `json:"users"`
}
// AdminUserUpdate Request body for updating user attributes (first name, last name, and roles)
type AdminUserUpdate struct {
// FirstName Updated given name for the user
FirstName *string `json:"first_name,omitempty"`
// LastName Updated family name for the user
LastName *string `json:"last_name,omitempty"`
// Roles Complete list of role keys to assign in Permit.io - REPLACES all existing roles (not additive). To add a role, include all current roles plus the new one. To remove a role, omit it from the array. Roles must exist in Permit.io environment. Invalid roles fail silently - check response.roles for final state. Omit this field entirely to leave roles unchanged.
Roles *[]string `json:"roles,omitempty"`
}
// ArrayFieldItem Single row of array field data (112 fields forming one row)
type ArrayFieldItem struct {
AareteDerivedAdditionRateChangeTimeline *string `json:"aareteDerivedAdditionRateChangeTimeline,omitempty"`
AareteDerivedClaimTypeCd *string `json:"aareteDerivedClaimTypeCd,omitempty"`
AareteDerivedFeeSchedule *string `json:"aareteDerivedFeeSchedule,omitempty"`
AareteDerivedFeeScheduleVersion *string `json:"aareteDerivedFeeScheduleVersion,omitempty"`
AareteDerivedGrouperVersion *string `json:"aareteDerivedGrouperVersion,omitempty"`
AareteDerivedLob *string `json:"aareteDerivedLob,omitempty"`
AareteDerivedNetwork *string `json:"aareteDerivedNetwork,omitempty"`
AareteDerivedProduct *string `json:"aareteDerivedProduct,omitempty"`
AareteDerivedProgram *string `json:"aareteDerivedProgram,omitempty"`
AareteDerivedProvType *string `json:"aareteDerivedProvType,omitempty"`
AareteDerivedReimbMethod *string `json:"aareteDerivedReimbMethod,omitempty"`
AdditionDesc *string `json:"additionDesc,omitempty"`
AdditionMaxFeeRateInc *float64 `json:"additionMaxFeeRateInc,omitempty"`
AdditionMaxPctRateInc *float64 `json:"additionMaxPctRateInc,omitempty"`
AuthAdmitTypeDesc *string `json:"authAdmitTypeDesc,omitempty"`
BillTypeCd *string `json:"billTypeCd,omitempty"`
BillTypeCdDesc *string `json:"billTypeCdDesc,omitempty"`
CarveoutCd *string `json:"carveoutCd,omitempty"`
CarveoutInd *bool `json:"carveoutInd,omitempty"`
ClaimAdmitTypeCd *string `json:"claimAdmitTypeCd,omitempty"`
ClaimStatusCd *string `json:"claimStatusCd,omitempty"`
ClaimStatusCdDesc *string `json:"claimStatusCdDesc,omitempty"`
Cpt4ProcCd *string `json:"cpt4ProcCd,omitempty"`
Cpt4ProcCdDesc *string `json:"cpt4ProcCdDesc,omitempty"`
Cpt4ProcMod *string `json:"cpt4ProcMod,omitempty"`
Cpt4ProcModDesc *string `json:"cpt4ProcModDesc,omitempty"`
DefaultInd *bool `json:"defaultInd,omitempty"`
DiagCd *string `json:"diagCd,omitempty"`
DiagCdDesc *string `json:"diagCdDesc,omitempty"`
DshFeeRate *float64 `json:"dshFeeRate,omitempty"`
DshInd *bool `json:"dshInd,omitempty"`
DshPctRate *float64 `json:"dshPctRate,omitempty"`
ExhibitPage *string `json:"exhibitPage,omitempty"`
ExhibitTitle *string `json:"exhibitTitle,omitempty"`
FacilityAdjustmentTerm *string `json:"facilityAdjustmentTerm,omitempty"`
GmeFeeRate *float64 `json:"gmeFeeRate,omitempty"`
GmeInd *bool `json:"gmeInd,omitempty"`
GmePctRate *float64 `json:"gmePctRate,omitempty"`
GreaterOfInd *bool `json:"greaterOfInd,omitempty"`
GrouperAlternativeLevelOfCare *string `json:"grouperAlternativeLevelOfCare,omitempty"`
GrouperBaseRate *float64 `json:"grouperBaseRate,omitempty"`
GrouperCd *string `json:"grouperCd,omitempty"`
GrouperCdDesc *string `json:"grouperCdDesc,omitempty"`
GrouperHacInd *bool `json:"grouperHacInd,omitempty"`
GrouperPctRate *float64 `json:"grouperPctRate,omitempty"`
GrouperReadmissionsInd *bool `json:"grouperReadmissionsInd,omitempty"`
GrouperRiskOfMortalitySubclass *string `json:"grouperRiskOfMortalitySubclass,omitempty"`
GrouperSeverity *string `json:"grouperSeverity,omitempty"`
GrouperSeverityInd *bool `json:"grouperSeverityInd,omitempty"`
GrouperTransferInd *bool `json:"grouperTransferInd,omitempty"`
GrouperType *string `json:"grouperType,omitempty"`
ImeFeeRate *float64 `json:"imeFeeRate,omitempty"`
ImeInd *bool `json:"imeInd,omitempty"`
ImePctRate *float64 `json:"imePctRate,omitempty"`
LesserOfInd *bool `json:"lesserOfInd,omitempty"`
LobProductRelationship *string `json:"lobProductRelationship,omitempty"`
LobProgramRelationship *string `json:"lobProgramRelationship,omitempty"`
NdcCd *string `json:"ndcCd,omitempty"`
NdcCdDesc *string `json:"ndcCdDesc,omitempty"`
NtapFeeRate *float64 `json:"ntapFeeRate,omitempty"`
NtapInd *bool `json:"ntapInd,omitempty"`
NtapPctRate *float64 `json:"ntapPctRate,omitempty"`
OutlierExclusionCd *string `json:"outlierExclusionCd,omitempty"`
OutlierExclusionCdDesc *string `json:"outlierExclusionCdDesc,omitempty"`
OutlierFirstDollarInd *bool `json:"outlierFirstDollarInd,omitempty"`
OutlierFixedLossNbrDaysThreshold *float64 `json:"outlierFixedLossNbrDaysThreshold,omitempty"`
OutlierFixedLossThreshold *float64 `json:"outlierFixedLossThreshold,omitempty"`
OutlierMaximum *float64 `json:"outlierMaximum,omitempty"`
OutlierMaximumFrequency *float64 `json:"outlierMaximumFrequency,omitempty"`
OutlierPctRate *float64 `json:"outlierPctRate,omitempty"`
OutlierTerm *string `json:"outlierTerm,omitempty"`
PatientAgeMax *string `json:"patientAgeMax,omitempty"`
PatientAgeMin *string `json:"patientAgeMin,omitempty"`
PlaceOfServiceCd *string `json:"placeOfServiceCd,omitempty"`
PlaceOfServiceCdDesc *string `json:"placeOfServiceCdDesc,omitempty"`
ProvSpecialtyCd *string `json:"provSpecialtyCd,omitempty"`
ProvSpecialtyCdDesc *string `json:"provSpecialtyCdDesc,omitempty"`
ProvTaxonomyCd *string `json:"provTaxonomyCd,omitempty"`
ProvTaxonomyCdDesc *string `json:"provTaxonomyCdDesc,omitempty"`
RangeNbrDays *string `json:"rangeNbrDays,omitempty"`
RateEscalatorDesc *string `json:"rateEscalatorDesc,omitempty"`
RateEscalatorInd *bool `json:"rateEscalatorInd,omitempty"`
RateEscalatorMaxRateIncPct *float64 `json:"rateEscalatorMaxRateIncPct,omitempty"`
RateEscalatorRateChangeTimeline *float64 `json:"rateEscalatorRateChangeTimeline,omitempty"`
ReimbConversionFactor *float64 `json:"reimbConversionFactor,omitempty"`
ReimbEffectiveDt *openapi_types.Date `json:"reimbEffectiveDt,omitempty"`
ReimbFeeRate *float64 `json:"reimbFeeRate,omitempty"`
ReimbPctRate *float64 `json:"reimbPctRate,omitempty"`
ReimbProvName *string `json:"reimbProvName,omitempty"`
ReimbProvNpi *string `json:"reimbProvNpi,omitempty"`
ReimbProvTin *string `json:"reimbProvTin,omitempty"`
ReimbTerm *string `json:"reimbTerm,omitempty"`
ReimbTerminationDt *openapi_types.Date `json:"reimbTerminationDt,omitempty"`
RevenueCd *string `json:"revenueCd,omitempty"`
RevenueCdDesc *string `json:"revenueCdDesc,omitempty"`
ServiceTerm *string `json:"serviceTerm,omitempty"`
StopLossDailyMaxRate *float64 `json:"stopLossDailyMaxRate,omitempty"`
StopLossExclusionCd *string `json:"stopLossExclusionCd,omitempty"`
StopLossExclusionDesc *string `json:"stopLossExclusionDesc,omitempty"`
StopLossFirstDollarInd *bool `json:"stopLossFirstDollarInd,omitempty"`
StopLossFixedLossThreshold *float64 `json:"stopLossFixedLossThreshold,omitempty"`
StopLossMaximum *float64 `json:"stopLossMaximum,omitempty"`
StopLossMaximumFrequency *float64 `json:"stopLossMaximumFrequency,omitempty"`
StopLossPctRateOnExcessCharges *float64 `json:"stopLossPctRateOnExcessCharges,omitempty"`
StopLossRangeNbrDays *float64 `json:"stopLossRangeNbrDays,omitempty"`
StopLossTerm *string `json:"stopLossTerm,omitempty"`
TriggerBaseThreshold *float64 `json:"triggerBaseThreshold,omitempty"`
TriggerCapThresholdAmt *float64 `json:"triggerCapThresholdAmt,omitempty"`
UcFeeRate *float64 `json:"ucFeeRate,omitempty"`
UcInd *bool `json:"ucInd,omitempty"`
UcPctRate *float64 `json:"ucPctRate,omitempty"`
UnitOfMeasure *string `json:"unitOfMeasure,omitempty"`
}
// BatchDocumentOutcome Per-file outcome from batch extraction and pipeline processing
type BatchDocumentOutcome struct {
// CleanFailReason Specific clean validation failure reason when outcome is clean_failed. Null otherwise.
CleanFailReason nullable.Nullable[string] `json:"clean_fail_reason,omitempty"`
// CreatedAt When the file was first extracted from the ZIP
CreatedAt *time.Time `json:"created_at,omitempty"`
// DocumentId Assigned document ID (null for files that never became documents)
DocumentId nullable.Nullable[openapi_types.UUID] `json:"document_id,omitempty"`
// ErrorDetail Human-readable error message for failure outcomes
ErrorDetail nullable.Nullable[string] `json:"error_detail,omitempty"`
// Filename Original filename from the ZIP archive
Filename string `json:"filename"`
// Outcome Current processing status
Outcome BatchDocumentOutcomeOutcome `json:"outcome"`
// UpdatedAt When the outcome was last updated by a pipeline stage
UpdatedAt *time.Time `json:"updated_at,omitempty"`
}
// BatchDocumentOutcomeOutcome Current processing status
type BatchDocumentOutcomeOutcome string
// BatchID The batch upload id.
type BatchID = openapi_types.UUID
// BatchStatus The status of a batch upload
type BatchStatus string
// BatchUploadDetails defines model for BatchUploadDetails.
type BatchUploadDetails struct {
// BatchId The batch upload id.
BatchId BatchID `json:"batch_id"`
// ClientId The client external id
ClientId ClientID `json:"client_id"`
// CompletedAt When the batch upload completed processing
CompletedAt nullable.Nullable[time.Time] `json:"completed_at,omitempty"`
// CreatedAt When the batch upload was created
CreatedAt time.Time `json:"created_at"`
// DocumentOutcomes Per-file outcome tracking for all files in the batch
DocumentOutcomes *[]BatchDocumentOutcome `json:"document_outcomes,omitempty"`
// FailedDocuments Number of documents that failed processing
FailedDocuments int32 `json:"failed_documents"`
// FailedFilenames List of filenames that failed processing
FailedFilenames *[]string `json:"failed_filenames,omitempty"`
// InvalidTypeDocuments Number of non-PDF files found in archive
InvalidTypeDocuments int32 `json:"invalid_type_documents"`
// OriginalFilename Original filename of the uploaded ZIP archive
OriginalFilename string `json:"original_filename"`
// ProcessedDocuments Number of documents processed so far
ProcessedDocuments int32 `json:"processed_documents"`
// ProgressPercent Processing progress percentage
ProgressPercent int32 `json:"progress_percent"`
// Status The status of a batch upload
Status BatchStatus `json:"status"`
// TotalDocuments Total number of documents in the batch
TotalDocuments int32 `json:"total_documents"`
}
// BatchUploadList List of batch uploads for a client
type BatchUploadList struct {
Batches []BatchUploadSummary `json:"batches"`
// TotalCount Total number of batches for this client
TotalCount int32 `json:"total_count"`
}
// BatchUploadResponse Response returned when a batch upload is accepted for processing
type BatchUploadResponse struct {
// BatchId The batch upload id.
BatchId BatchID `json:"batch_id"`
// Status The status of a batch upload
Status BatchStatus `json:"status"`
// StatusUrl URL to check batch status
StatusUrl string `json:"status_url"`
}
// BatchUploadSummary Summary information about a batch upload
type BatchUploadSummary struct {
// BatchId The batch upload id.
BatchId BatchID `json:"batch_id"`
// ClientId The client external id
ClientId ClientID `json:"client_id"`
// CompletedAt When the batch upload completed processing
CompletedAt nullable.Nullable[time.Time] `json:"completed_at,omitempty"`
// CreatedAt When the batch upload was created
CreatedAt time.Time `json:"created_at"`
// FailedDocuments Number of documents that failed processing
FailedDocuments int32 `json:"failed_documents"`
// InvalidTypeDocuments Number of non-PDF files found in archive
InvalidTypeDocuments int32 `json:"invalid_type_documents"`
// OriginalFilename Original filename of the uploaded ZIP archive
OriginalFilename string `json:"original_filename"`
// ProcessedDocuments Number of documents processed so far
ProcessedDocuments int32 `json:"processed_documents"`
// ProgressPercent Processing progress percentage
ProgressPercent int32 `json:"progress_percent"`
// Status The status of a batch upload
Status BatchStatus `json:"status"`
// TotalDocuments Total number of documents in the batch
TotalDocuments int32 `json:"total_documents"`
}
// BotLabelRecord Label record exposed by the M5 all-metadata endpoint. Mirrors
// LabelRecord but treats appliedBy as a plain string so the
// bundle survives non-email AppliedBy values (the underlying
// documentLabels.appliedBy is varchar(255), not email-validated
// at the database layer).
type BotLabelRecord struct {
AppliedAt time.Time `json:"appliedAt"`
AppliedBy string `json:"appliedBy"`
DocumentId openapi_types.UUID `json:"documentId"`
Id openapi_types.UUID `json:"id"`
Label string `json:"label"`
}
// BotSessionListResponse Paged list of chatbot sessions.
type BotSessionListResponse struct {
Sessions []BotSessionResponse `json:"sessions"`
}
// BotSessionResponse The canonical chatbot session entity. Used as the response body
// for create / get / patch and as the element type of the list
// response. lastTurn is the derived last_terminal_ordinal from
// plan §4 — never the in-flight ordinal.
type BotSessionResponse struct {
ClientId string `json:"clientId"`
CreatedAt time.Time `json:"createdAt"`
// CreatedBy Cognito subject (JWT sub) of the creator.
CreatedBy string `json:"createdBy"`
Id openapi_types.UUID `json:"id"`
// LastTurn Derived last_terminal_ordinal per plan §4. 0 when the session
// has no terminal turns yet.
LastTurn int32 `json:"lastTurn"`
// RecentTurns Most recent terminal turns. Populated by the list endpoint
// with min(request.limit, cfg.RecentTurns) entries per plan §3.
// Single-session reads (GET / POST / PATCH) emit an empty array.
RecentTurns []BotTurnPreview `json:"recentTurns"`
// Scope The persisted document/folder scope of a chatbot session.
// Empty arrays mean "all documents for the client" per plan §4.
// Folder ids are returned as-is; folder expansion to documents
// happens only in the M3 FastAPI payload assembly path, not here.
Scope BotSessionScope `json:"scope"`
// State Session state object persisted as jsonb.
State map[string]interface{} `json:"state"`
// Title Empty until the first turn arrives (plan §6).
Title string `json:"title"`
UpdatedAt time.Time `json:"updatedAt"`
}
// BotSessionScope The persisted document/folder scope of a chatbot session.
// Empty arrays mean "all documents for the client" per plan §4.
// Folder ids are returned as-is; folder expansion to documents
// happens only in the M3 FastAPI payload assembly path, not here.
type BotSessionScope struct {
// DocumentIds Document ids in the session scope.
DocumentIds []openapi_types.UUID `json:"documentIds"`
// FolderIds Folder ids in the session scope.
FolderIds []openapi_types.UUID `json:"folderIds"`
}
// BotSessionScopePatchRequest Add/remove sets for documents and folders. Each array is
// deduplicated server-side. An id appearing in both add and remove
// sets is rejected with 400 add_remove_conflict. Cross-client ids
// are rejected with 400 document_cross_client / folder_cross_client.
type BotSessionScopePatchRequest struct {
AddDocuments *[]openapi_types.UUID `json:"addDocuments,omitempty"`
AddFolders *[]openapi_types.UUID `json:"addFolders,omitempty"`
RemoveDocuments *[]openapi_types.UUID `json:"removeDocuments,omitempty"`
RemoveFolders *[]openapi_types.UUID `json:"removeFolders,omitempty"`
}
// BotTurnListResponse GET turns response. Turns are ordered ASC by ordinal.
type BotTurnListResponse struct {
Turns []BotTurnResponse `json:"turns"`
}
// BotTurnPreview A single turn surfaced inside a session list response. M2 returns
// only the columns the UI needs to render preview cards: ordinal,
// prompt, optional completion, status, createdAt. Plan §5
// ListLastTurnsForSessions returns the full row column set; the
// response trims it to the preview view here.
type BotTurnPreview struct {
// Completion Assistant completion (markdown) when status=completed.
Completion nullable.Nullable[string] `json:"completion,omitempty"`
// CreatedAt When the turn was inserted.
CreatedAt time.Time `json:"createdAt"`
// Ordinal 1-based turn ordinal within the session.
Ordinal int32 `json:"ordinal"`
// Prompt User prompt text.
Prompt string `json:"prompt"`
// Status Turn status per plan §4.
Status BotTurnPreviewStatus `json:"status"`
}
// BotTurnPreviewStatus Turn status per plan §4.
type BotTurnPreviewStatus string
// BotTurnResponse One persisted bot_turns row exposed on the wire. Status enum
// mirrors the bot_turns_status_values CHECK constraint from
// migration 131. error is the persisted JSON when status is
// errored / abandoned / session_deleted, omitted otherwise.
type BotTurnResponse struct {
Completion *string `json:"completion,omitempty"`
CreatedAt time.Time `json:"createdAt"`
Error *map[string]interface{} `json:"error,omitempty"`
LatencyMs *int32 `json:"latencyMs,omitempty"`
Ordinal int32 `json:"ordinal"`
Prompt string `json:"prompt"`
Status BotTurnResponseStatus `json:"status"`
TokensIn *int32 `json:"tokensIn,omitempty"`
TokensOut *int32 `json:"tokensOut,omitempty"`
}
// BotTurnResponseStatus defines model for BotTurnResponse.Status.
type BotTurnResponseStatus string
// ClientCanSync If the client is allowing active syncs
type ClientCanSync = bool
// ClientCreate The properties for creation.
type ClientCreate struct {
// Id The client external id
Id ClientID `json:"id"`
// Name The client name
Name ClientName `json:"name"`
}
// ClientID The client external id
type ClientID = string
// ClientIDBody The client id.
type ClientIDBody struct {
// Id The client external id
Id ClientID `json:"id"`
}
// ClientListResponse Response containing a list of all clients.
type ClientListResponse struct {
// Clients List of clients in the system.
Clients []DocClient `json:"clients"`
// TotalCount Total number of clients.
TotalCount int32 `json:"totalCount"`
}
// ClientName The client name
type ClientName = string
// ClientStatus Specifies the status of a client.
type ClientStatus string
// ClientStatusBody A client status information object.
type ClientStatusBody struct {
// Status Specifies the status of a client.
Status ClientStatus `json:"status"`
}
// ClientUpdate The properties that may be updated.
type ClientUpdate struct {
// CanSync If the client is allowing active syncs
CanSync *ClientCanSync `json:"can_sync,omitempty"`
// Name The client name
Name *ClientName `json:"name,omitempty"`
}
// CodeVersion The desired code version.
type CodeVersion = int64
// Collector Collector model. Note - minimum_text_version has been removed since text extraction is deprecated.
type Collector struct {
// ActiveVersion The desired version.
ActiveVersion Version `json:"active_version"`
// ClientId The client external id
ClientId ClientID `json:"client_id"`
// LatestVersion The desired version.
LatestVersion Version `json:"latest_version"`
// MinimumCleanerVersion The desired code version.
MinimumCleanerVersion CodeVersion `json:"minimum_cleaner_version"`
}
// CollectorFieldName The output field name.
type CollectorFieldName = string
// CollectorSet Payload for updating a Collector. Note - minimum_text_version has been removed.
type CollectorSet struct {
// ActiveVersion The desired version.
ActiveVersion *Version `json:"active_version,omitempty"`
// MinimumCleanerVersion The desired code version.
MinimumCleanerVersion *CodeVersion `json:"minimum_cleaner_version,omitempty"`
}
// CreateBotSessionRequest Empty body for now — accepted as JSON object to leave room for
// future fields (title hint, initial scope) without a breaking
// change. M2 ignores any properties the caller supplies.
type CreateBotSessionRequest map[string]interface{}
// CreateBotTurnRequest Body for POST /client/{clientId}/bot/sessions/{sessionId}/turns.
// The handler computes the target ordinal from session state via
// prompt-match semantics (a retry of an existing terminal-failure
// or completed turn reuses that row's ordinal). The wire body
// therefore carries only the prompt; plan §6.
type CreateBotTurnRequest struct {
// Prompt User prompt. Plan §6 mandates 1 <= rune count <= MaxTurnChars.
Prompt string `json:"prompt"`
}
// CustomMetadataHistoryResponse Paged list of version summaries, newest first.
type CustomMetadataHistoryResponse struct {
Versions []struct {
CreatedAt time.Time `json:"createdAt"`
CreatedBy string `json:"createdBy"`
Version int32 `json:"version"`
} `json:"versions"`
}
// CustomMetadataRequest POST /custom-metadata body. No createdBy field — the actor is derived from the JWT sub claim.
type CustomMetadataRequest struct {
DocumentId openapi_types.UUID `json:"documentId"`
// Metadata Arbitrary JSON object that must conform to the document's bound schema_def. The byte-level cap (1 048 576) lives in the service layer constant MaxMetadataPayloadBytes.
Metadata map[string]interface{} `json:"metadata"`
}
// CustomMetadataResponse Full metadata row decorated with the document's bound schema id, name, and version.
type CustomMetadataResponse struct {
CreatedAt time.Time `json:"createdAt"`
// CreatedBy Cognito subject ID (JWT sub claim) of the writer.
CreatedBy string `json:"createdBy"`
DocumentId openapi_types.UUID `json:"documentId"`
Id openapi_types.UUID `json:"id"`
Metadata map[string]interface{} `json:"metadata"`
SchemaId nullable.Nullable[openapi_types.UUID] `json:"schemaId,omitempty"`
SchemaName nullable.Nullable[string] `json:"schemaName,omitempty"`
SchemaVersion nullable.Nullable[int32] `json:"schemaVersion,omitempty"`
Version int32 `json:"version"`
}
// CustomSchemaListResponse List of custom metadata schemas for a client. Each row omits the full JSON Schema document; use GET /super-admin/custom-schemas/ {schemaId} to retrieve it.
type CustomSchemaListResponse struct {
// Schemas The schema rows matching the query filters.
Schemas []struct {
// CanDelete True when documentCount is zero.
CanDelete bool `json:"canDelete"`
// ClientId The client that owns this schema.
ClientId string `json:"clientId"`
// CreatedAt Timestamp when this schema row was created.
CreatedAt time.Time `json:"createdAt"`
// CreatedBy Cognito subject ID (JWT sub claim) of the caller. Opaque UUID, not an email.
CreatedBy string `json:"createdBy"`
// Description Optional human-readable description of the schema.
Description *string `json:"description,omitempty"`
// DocumentCount Number of documents referencing this schema version.
DocumentCount int32 `json:"documentCount"`
// Id The schema row ID.
Id openapi_types.UUID `json:"id"`
// Name The schema name (shared across versions in a lineage).
Name string `json:"name"`
// Status Lifecycle state of a client_metadata_schemas row. `active` is
// the version currently assignable to new documents. `superseded`
// is automatically set when a newer version of the same (clientId,
// name) lineage is created via POST /versions. `retired` is set
// when a super_admin explicitly deletes an unused schema.
Status SchemaStatus `json:"status"`
// Version Monotonic version number within the lineage.
Version int32 `json:"version"`
} `json:"schemas"`
}
// CustomSchemaRequest Request body for creating a new custom metadata schema. Does not include a createdBy field; the handler derives the actor from the authenticated JWT subject.
type CustomSchemaRequest struct {
// ClientId The client that owns this schema.
ClientId string `json:"clientId"`
// Description Optional human-readable description of the schema.
Description *string `json:"description,omitempty"`
// Name Unique schema name within the client lineage.
Name string `json:"name"`
// Schema The full JSON Schema document (Draft 2020-12) used to validate custom document metadata. Must declare root type=object and must explicitly set additionalProperties. The maxProperties cap is a defense-in-depth limit against malformed schema payloads; the byte-level cap (65 536) lives in the customschema validator.
Schema map[string]interface{} `json:"schema"`
}
// CustomSchemaResponse Full custom metadata schema row including the JSON Schema document and lifecycle metadata.
type CustomSchemaResponse struct {
// CanDelete True when documentCount is zero and the schema can be retired.
CanDelete bool `json:"canDelete"`
// ClientId The client that owns this schema.
ClientId string `json:"clientId"`
// CreatedAt Timestamp when this schema row was created.
CreatedAt time.Time `json:"createdAt"`
// CreatedBy Cognito subject ID (JWT sub claim) of the caller. Opaque UUID, not an email.
CreatedBy string `json:"createdBy"`
// Description Optional human-readable description of the schema.
Description *string `json:"description,omitempty"`
// DocumentCount Number of documents currently referencing this schema version.
DocumentCount int32 `json:"documentCount"`
// Id The schema row ID.
Id openapi_types.UUID `json:"id"`
// Name The schema name (shared across versions in a lineage).
Name string `json:"name"`
// Schema The full JSON Schema document (Draft 2020-12).
Schema map[string]interface{} `json:"schema"`
// Status Lifecycle state of a client_metadata_schemas row. `active` is
// the version currently assignable to new documents. `superseded`
// is automatically set when a newer version of the same (clientId,
// name) lineage is created via POST /versions. `retired` is set
// when a super_admin explicitly deletes an unused schema.
Status SchemaStatus `json:"status"`
// Version Monotonic version number within the (clientId, name) lineage.
Version int32 `json:"version"`
}
// CustomSchemaVersionRequest Request body for creating a new version of an existing custom metadata schema. The parent schema row supplies clientId and name; the actor is derived from the authenticated JWT subject.
type CustomSchemaVersionRequest struct {
// Description Optional human-readable description of this new version.
Description *string `json:"description,omitempty"`
// Schema The full JSON Schema document (Draft 2020-12) for the new version. Same validation rules as CustomSchemaRequest.schema.
Schema map[string]interface{} `json:"schema"`
}
// DeleteResponse Response for hard-delete operations when verbose=true
type DeleteResponse struct {
// DeletedDocuments S3 paths of orphaned source documents (only populated when verbose=true)
DeletedDocuments []struct {
// DocumentId ID of the deleted document
DocumentId openapi_types.UUID `json:"documentId"`
// S3Path Full S3 path (s3://bucket/key) of the orphaned source file
S3Path string `json:"s3Path"`
} `json:"deletedDocuments"`
}
// DocClient The properties of a client.
type DocClient struct {
// CanSync If the client is allowing active syncs
CanSync ClientCanSync `json:"can_sync"`
// Id The client external id
Id ClientID `json:"id"`
// Name The client name
Name ClientName `json:"name"`
}
// DocumentAllMetadataResponse Bundle returned by GET /client/{clientId}/documents/{documentId}/all-metadata.
// document is the M1 enriched-document shape; labels is always a
// non-null array (empty when no labels are applied); customMetadata
// is null when no schema is bound or no metadata rows exist.
type DocumentAllMetadataResponse struct {
// CustomMetadata Latest custom metadata payload for the document, or null
// when no schema is bound / no metadata rows exist.
CustomMetadata *map[string]interface{} `json:"customMetadata,omitempty"`
// Document Enriched document details with additional metadata
Document DocumentEnriched `json:"document"`
Labels []BotLabelRecord `json:"labels"`
}
// DocumentEnriched Enriched document details with additional metadata
type DocumentEnriched struct {
// ClientId The client external id
ClientId ClientID `json:"client_id"`
// CustomSchemaId Mutable-metadata feature: the client_metadata_schemas row id this document is currently bound to, or null when the document has not been opted in to the custom schema system. A document with a non-null customSchemaId rejects legacy field extraction writes.
CustomSchemaId *openapi_types.UUID `json:"customSchemaId,omitempty"`
// FileSizeBytes File size in bytes (null for legacy documents)
FileSizeBytes *int64 `json:"fileSizeBytes,omitempty"`
// Filename Original filename of the document
Filename *string `json:"filename,omitempty"`
// FolderId Parent folder ID, null if document is not in a folder
FolderId *openapi_types.UUID `json:"folderId,omitempty"`
// HasCustomMetadata True iff at least one document_custom_metadata row exists for this document. A document can have customSchemaId set but hasCustomMetadata false (schema bound, no metadata written yet).
HasCustomMetadata *bool `json:"hasCustomMetadata,omitempty"`
// HasTextRecord Whether a text extraction (field extraction) record exists for this document
HasTextRecord bool `json:"hasTextRecord"`
// Hash The document hash
Hash Hash `json:"hash"`
// Id The document id.
Id DocumentID `json:"id"`
// Labels All labels applied to this document
Labels []LabelRecord `json:"labels"`
// OriginalPath Original path provided during upload (immutable)
OriginalPath *string `json:"originalPath,omitempty"`
// TextRecord Field extraction with version information
TextRecord *FieldExtractionResponse `json:"textRecord,omitempty"`
}
// DocumentID The document id.
type DocumentID = openapi_types.UUID
// DocumentInFolder Document within a folder with enriched metadata (lighter format, excludes client_id and fields)
type DocumentInFolder struct {
// FileSizeBytes File size in bytes (null for legacy documents)
FileSizeBytes *int64 `json:"fileSizeBytes,omitempty"`
// Filename Original filename of the document
Filename *string `json:"filename,omitempty"`
// FolderId Parent folder ID
FolderId *openapi_types.UUID `json:"folderId,omitempty"`
// HasTextRecord Whether a text extraction record exists for this document
HasTextRecord bool `json:"hasTextRecord"`
// Hash The document hash
Hash Hash `json:"hash"`
// Id The document id.
Id DocumentID `json:"id"`
// Labels All labels applied to this document
Labels []LabelRecord `json:"labels"`
// OriginalPath Original path provided during upload (immutable)
OriginalPath *string `json:"originalPath,omitempty"`
// TextRecord Field extraction with version information
TextRecord *FieldExtractionResponse `json:"textRecord,omitempty"`
}
// DocumentMetadataResetResponse Result of a reset-metadata operation. The previous* fields describe the document's schema binding before the reset ran so the caller can log or display what was wiped. Fields are null when the document had no schema bound at reset time (the idempotent no-op case, returned alongside metadataVersionsDeleted set to 0).
type DocumentMetadataResetResponse struct {
// DocumentId The document whose metadata was reset.
DocumentId openapi_types.UUID `json:"documentId"`
// MetadataVersionsDeleted Number of document_custom_metadata rows that existed (and were deleted) at reset time. Zero is valid: the reset endpoint is idempotent on already-clean documents.
MetadataVersionsDeleted int32 `json:"metadataVersionsDeleted"`
// PreviousSchemaId The document's custom_schema_id before the reset ran. Null when no schema was bound.
PreviousSchemaId nullable.Nullable[openapi_types.UUID] `json:"previousSchemaId"`
// PreviousSchemaName Name of the previously bound schema, or null when no schema was bound.
PreviousSchemaName nullable.Nullable[string] `json:"previousSchemaName"`
// PreviousSchemaVersion Version of the previously bound schema row, or null when no schema was bound.
PreviousSchemaVersion nullable.Nullable[int32] `json:"previousSchemaVersion"`
// ResetAt UTC timestamp when the reset completed.
ResetAt time.Time `json:"resetAt"`
// ResetBy Cognito subject ID (JWT sub claim) of the caller. Opaque UUID, not an email.
ResetBy string `json:"resetBy"`
}
// DocumentSchemaAssignRequest Request body for PATCH /super-admin/documents/{id}/schema. The actor is derived from the JWT sub claim; the body has no createdBy field. A null customSchemaId clears the binding.
type DocumentSchemaAssignRequest struct {
// CustomSchemaId The client_metadata_schemas row id to bind, or null to clear.
CustomSchemaId nullable.Nullable[openapi_types.UUID] `json:"customSchemaId,omitempty"`
}
// DocumentSchemaAssignResponse Result of a schema binding mutation. Returns the bound schema metadata (or nulls when cleared).
type DocumentSchemaAssignResponse struct {
CustomSchemaId nullable.Nullable[openapi_types.UUID] `json:"customSchemaId,omitempty"`
DocumentId openapi_types.UUID `json:"documentId"`
SchemaName nullable.Nullable[string] `json:"schemaName,omitempty"`
SchemaVersion nullable.Nullable[int32] `json:"schemaVersion,omitempty"`
}
// DocumentSchemaResponse Body returned by GET /client/{clientId}/documents/{documentId}/schema.
// schema is the JSON Schema body bound to the document, or null
// when the document has no custom_schema_id binding. The
// clientId / documentId echo the URL parameters so the caller can
// reuse the response without parsing the path.
type DocumentSchemaResponse struct {
ClientId string `json:"clientId"`
DocumentId openapi_types.UUID `json:"documentId"`
// Schema JSON Schema body, or null when the document has no schema
// bound. The body round-trips verbatim from
// client_metadata_schemas.schema_def.
Schema *map[string]interface{} `json:"schema,omitempty"`
}
// DocumentSummary The document summary properties.
type DocumentSummary struct {
// Hash The document hash
Hash Hash `json:"hash"`
// Id The document id.
Id DocumentID `json:"id"`
}
// ErrorMessage Description of error
type ErrorMessage struct {
// Details Additional error details for debugging (sanitized).
Details *string `json:"details,omitempty"`
// ErrorType Machine-readable error classification for programmatic handling.
ErrorType *string `json:"error_type,omitempty"`
// Message Message describing the cause.
Message string `json:"message"`
}
// EulaAgreement EULA agreement record
type EulaAgreement struct {
// AgreedAt When the agreement was recorded
AgreedAt time.Time `json:"agreedAt"`
// AgreedFromIp IP address from which the user agreed
AgreedFromIp string `json:"agreedFromIp"`
// CognitoSubjectId User's Cognito subject ID
CognitoSubjectId string `json:"cognitoSubjectId"`
// EulaVersion EULA version string
EulaVersion string `json:"eulaVersion"`
// EulaVersionId EULA version ID
EulaVersionId openapi_types.UUID `json:"eulaVersionId"`
// EulaVersionTitle EULA version title (for user history view)
EulaVersionTitle *string `json:"eulaVersionTitle,omitempty"`
// Id Agreement record ID
Id openapi_types.UUID `json:"id"`
// UserEmail User identifier at time of agreement (email, username, or subject ID)
UserEmail string `json:"userEmail"`
}
// EulaAgreementList Paginated list of EULA agreements
type EulaAgreementList struct {
// Agreements List of EULA agreements
Agreements []EulaAgreement `json:"agreements"`
// HasMore Whether more pages are available
HasMore *bool `json:"has_more,omitempty"`
// Page Current page number
Page int32 `json:"page"`
// PageSize Number of items per page
PageSize int32 `json:"page_size"`
// Total Total number of agreements matching filter
Total int32 `json:"total"`
}
// EulaAgreementResponse Response after recording an agreement
type EulaAgreementResponse struct {
// AgreedAt When the agreement was recorded
AgreedAt time.Time `json:"agreedAt"`
// EulaVersion EULA version string
EulaVersion string `json:"eulaVersion"`
// EulaVersionId EULA version ID
EulaVersionId openapi_types.UUID `json:"eulaVersionId"`
// Id Agreement record ID
Id openapi_types.UUID `json:"id"`
}
// EulaCompliancePagination Pagination information for compliance report
type EulaCompliancePagination struct {
// Page Current page number
Page int32 `json:"page"`
// PageSize Number of items per page
PageSize int32 `json:"pageSize"`
// TotalItems Total number of items
TotalItems int32 `json:"totalItems"`
// TotalPages Total number of pages
TotalPages int32 `json:"totalPages"`
}
// EulaComplianceReport EULA compliance report with user agreement status
type EulaComplianceReport struct {
// EulaVersion Abbreviated EULA version for lists
EulaVersion EulaVersionSummary `json:"eulaVersion"`
// Pagination Pagination information for compliance report
Pagination EulaCompliancePagination `json:"pagination"`
// Summary Summary statistics for compliance report
Summary EulaComplianceSummary `json:"summary"`
// Users Unified list of users with agreement status
Users []EulaComplianceUser `json:"users"`
}
// EulaComplianceSummary Summary statistics for compliance report
type EulaComplianceSummary struct {
// AgreedCount Number of users who have agreed
AgreedCount int32 `json:"agreedCount"`
// CompliancePercentage Percentage of users who have agreed
CompliancePercentage float32 `json:"compliancePercentage"`
// NotAgreedCount Number of users who have not agreed
NotAgreedCount int32 `json:"notAgreedCount"`
// TotalUsers Total number of users in the system
TotalUsers int32 `json:"totalUsers"`
}
// EulaComplianceUser User record in compliance report
type EulaComplianceUser struct {
// Agreed Whether the user has agreed to this EULA version
Agreed bool `json:"agreed"`
// AgreedAt When the user agreed (null if not agreed)
AgreedAt nullable.Nullable[time.Time] `json:"agreedAt,omitempty"`
// AgreedFromIp IP address from which the user agreed (null if not agreed)
AgreedFromIp nullable.Nullable[string] `json:"agreedFromIp,omitempty"`
// CognitoSubjectId User's Cognito subject ID
CognitoSubjectId string `json:"cognitoSubjectId"`
// CurrentEmail User's current email from Cognito (may be empty or a non-email identifier)
CurrentEmail string `json:"currentEmail"`
// Email User identifier at time of agreement (email, username, or subject ID; null if not agreed)
Email nullable.Nullable[string] `json:"email,omitempty"`
}
// EulaPublicResponse Public response for current EULA version
type EulaPublicResponse struct {
// Content Full EULA text in Markdown format
Content string `json:"content"`
// EffectiveDate When this version became effective (optional)
EffectiveDate nullable.Nullable[time.Time] `json:"effectiveDate,omitempty"`
// Id EULA version ID
Id openapi_types.UUID `json:"id"`
// Title Human-readable title
Title string `json:"title"`
// Version Version string
Version string `json:"version"`
}
// EulaStatusResponse User's EULA agreement status
type EulaStatusResponse struct {
// AgreedAt When the user agreed (null if not agreed)
AgreedAt nullable.Nullable[time.Time] `json:"agreedAt,omitempty"`
// AgreedVersion Version the user agreed to (null if not agreed)
AgreedVersion nullable.Nullable[string] `json:"agreedVersion,omitempty"`
// CurrentVersion Current EULA version string
CurrentVersion string `json:"currentVersion"`
// CurrentVersionId EULA version ID
CurrentVersionId openapi_types.UUID `json:"currentVersionId"`
// HasAgreed Whether the user has agreed to the current EULA
HasAgreed bool `json:"hasAgreed"`
}
// EulaVersion Full EULA version details
type EulaVersion struct {
// ActivatedAt When this version was activated
ActivatedAt nullable.Nullable[time.Time] `json:"activatedAt,omitempty"`
// ActivatedBy Identifier of admin who activated this version (email, username, or subject ID)
ActivatedBy nullable.Nullable[string] `json:"activatedBy,omitempty"`
// Content Full EULA text in Markdown format
Content string `json:"content"`
// CreatedAt Creation timestamp
CreatedAt time.Time `json:"createdAt"`
// CreatedBy Identifier of admin who created this version (email, username, or subject ID)
CreatedBy string `json:"createdBy"`
// EffectiveDate When this version becomes effective (optional)
EffectiveDate nullable.Nullable[time.Time] `json:"effectiveDate,omitempty"`
// Id EULA version ID
Id openapi_types.UUID `json:"id"`
// IsCurrent Whether this is the current active version
IsCurrent bool `json:"isCurrent"`
// Title Human-readable title
Title string `json:"title"`
// Version Version string (e.g., "1.0", "2024-01")
Version string `json:"version"`
}
// EulaVersionCreate Request body for creating a new EULA version
type EulaVersionCreate struct {
// Content Full EULA text in Markdown format
Content string `json:"content"`
// EffectiveDate When this version becomes effective (optional)
EffectiveDate nullable.Nullable[time.Time] `json:"effectiveDate,omitempty"`
// Title Human-readable title
Title string `json:"title"`
// Version Version string (must be unique)
Version string `json:"version"`
}
// EulaVersionList Paginated list of EULA versions
type EulaVersionList struct {
// HasMore Whether more pages are available
HasMore *bool `json:"has_more,omitempty"`
// Page Current page number
Page int32 `json:"page"`
// PageSize Number of items per page
PageSize int32 `json:"page_size"`
// Total Total number of EULA versions
Total int32 `json:"total"`
// Versions List of EULA versions
Versions []EulaVersion `json:"versions"`
}
// EulaVersionSummary Abbreviated EULA version for lists
type EulaVersionSummary struct {
// EffectiveDate When this version becomes effective (optional)
EffectiveDate nullable.Nullable[time.Time] `json:"effectiveDate,omitempty"`
// Id EULA version ID
Id openapi_types.UUID `json:"id"`
// IsCurrent Whether this is the current active version
IsCurrent bool `json:"isCurrent"`
// Title Human-readable title
Title string `json:"title"`
// Version Version string
Version string `json:"version"`
}
// EulaVersionUpdate Request body for updating EULA version metadata
type EulaVersionUpdate struct {
// EffectiveDate When this version becomes effective
EffectiveDate *time.Time `json:"effectiveDate,omitempty"`
// Title Human-readable title
Title *string `json:"title,omitempty"`
}
// ExportDetails Payload for export trigger response.
type ExportDetails struct {
// ClientId The client external id
ClientId ClientID `json:"client_id"`
// OutputLocation The location in which the export zip file will be found.
OutputLocation *string `json:"output_location,omitempty"`
// Status The possible export states.
Status ExportStatus `json:"status"`
}
// ExportID The export id.
type ExportID = openapi_types.UUID
// ExportStatus The possible export states.
type ExportStatus string
// ExportTrigger Payload for triggering an export.
type ExportTrigger struct {
// FieldFilters Filter the scope based on field output values.
FieldFilters *[]FieldFilter `json:"field_filters,omitempty"`
// IngestionFilters Filter the scope based on ingestion parameters.
IngestionFilters *struct {
// EndDate The last date of ingestion.
EndDate *time.Time `json:"end_date,omitempty"`
// StartDate This first date of ingestion.
StartDate *time.Time `json:"start_date,omitempty"`
} `json:"ingestion_filters,omitempty"`
}
// FieldExtractionRequest Request to create a new field extraction with single and array fields
type FieldExtractionRequest struct {
// ArrayFields Array of field extraction items (all must have consistent structure)
ArrayFields []ArrayFieldItem `json:"arrayFields"`
// CreatedBy Email of user creating the extraction
CreatedBy openapi_types.Email `json:"createdBy"`
// DocumentId The document id.
DocumentId DocumentID `json:"documentId"`
// SingleFields Single-value fields for a document extraction (1:1 relationship)
SingleFields SingleFields `json:"singleFields"`
}
// FieldExtractionResponse Field extraction with version information
type FieldExtractionResponse struct {
// ArrayFields Array of field extraction items
ArrayFields []ArrayFieldItem `json:"arrayFields"`
// CreatedAt Creation timestamp
CreatedAt time.Time `json:"createdAt"`
// CreatedBy Email of user who created this extraction
CreatedBy openapi_types.Email `json:"createdBy"`
// DocumentId The document id.
DocumentId DocumentID `json:"documentId"`
// Id Field extraction ID
Id openapi_types.UUID `json:"id"`
// SingleFields Single-value fields for a document extraction (1:1 relationship)
SingleFields SingleFields `json:"singleFields"`
// Version Version number (1-based)
Version int32 `json:"version"`
}
// FieldExtractionVersion Field extraction version summary for history
type FieldExtractionVersion struct {
// CreatedAt Creation timestamp
CreatedAt time.Time `json:"createdAt"`
// CreatedBy Email of user who created this version
CreatedBy openapi_types.Email `json:"createdBy"`
// DocumentId The document id.
DocumentId DocumentID `json:"documentId"`
// Id Field extraction ID
Id openapi_types.UUID `json:"id"`
// Version Version number (1-based)
Version int32 `json:"version"`
}
// FieldFilter Filtering a column
type FieldFilter struct {
// Condition The possible field filtering conditions.
Condition FieldFilterCondition `json:"condition"`
// FieldName The output field name.
FieldName CollectorFieldName `json:"field_name"`
// Values The values useful to the filter.
Values []string `json:"values"`
}
// FieldFilterCondition The possible field filtering conditions.
type FieldFilterCondition string
// Folder Folder information for organizing documents
type Folder struct {
// ClientId The client external id
ClientId ClientID `json:"clientId"`
// CreatedAt Creation timestamp
CreatedAt time.Time `json:"createdAt"`
// CreatedBy Email of the user who created this folder
CreatedBy openapi_types.Email `json:"createdBy"`
// Id Folder ID
Id openapi_types.UUID `json:"id"`
// Metrics Processing metrics for this folder. Only populated when metrics=true
// is specified in the request. Null otherwise.
Metrics nullable.Nullable[FolderMetricsInline] `json:"metrics,omitempty"`
// ParentId Parent folder ID
ParentId nullable.Nullable[openapi_types.UUID] `json:"parentId,omitempty"`
// Path Folder path (must start with /). Root folder has path "/".
Path string `json:"path"`
}
// FolderCreate Request to create a new folder for organizing documents
type FolderCreate struct {
// ClientId The client external id
ClientId ClientID `json:"clientId"`
// CreatedBy Email of user who created the folder
CreatedBy openapi_types.Email `json:"createdBy"`
// ParentId Optional parent folder ID
ParentId *openapi_types.UUID `json:"parentId,omitempty"`
// Path Folder path (must start with /). Use "/" for root folder.
Path string `json:"path"`
}
// FolderList List of folders for a client
type FolderList struct {
// Folders List of folders. Each folder includes its ID, path, and parentId.
// Root-level folders have parentId set to null. Clients can use
// parentId to reconstruct the folder hierarchy/tree structure.
Folders []Folder `json:"folders"`
}
// FolderMetrics Processing metrics for a folder including document counts
type FolderMetrics struct {
// ByLabel Document counts by label
ByLabel map[string]int32 `json:"byLabel"`
// FolderId Unique identifier for the folder
FolderId openapi_types.UUID `json:"folderId"`
// TotalDocuments Total number of documents in folder
TotalDocuments int32 `json:"totalDocuments"`
}
// FolderMetricsInline Inline processing metrics for a folder (excludes folderId since it's on parent)
type FolderMetricsInline struct {
// ByLabel Document counts by label
ByLabel map[string]int32 `json:"byLabel"`
// TotalDocuments Total number of documents in folder
TotalDocuments int32 `json:"totalDocuments"`
}
// FolderRename Request to rename an existing folder
type FolderRename struct {
// Path New folder path (must start with /). Use "/" for root folder.
Path string `json:"path"`
}
// Hash The document hash
type Hash = string
// IdMessage A single uuid.
type IdMessage struct {
// Id Unique identifier for entity.
Id openapi_types.UUID `json:"id"`
}
// IdentityResponse Response containing the user's roles and their permissions
type IdentityResponse struct {
// Roles List of roles assigned to the user with their permissions
Roles []IdentityRole `json:"roles"`
}
// IdentityRole A role assigned to the user with its permissions
type IdentityRole struct {
// Description Optional description of the role
Description *string `json:"description,omitempty"`
// Key The role key/identifier
Key string `json:"key"`
// Name Human-readable role name
Name string `json:"name"`
// Permissions List of permissions granted by this role
Permissions []string `json:"permissions"`
}
// LabelApplication Request to apply a workflow label to a document
type LabelApplication struct {
// AppliedBy Email of user applying the label
AppliedBy openapi_types.Email `json:"appliedBy"`
// Label Label name (alphanumeric and underscore only)
Label string `json:"label"`
}
// LabelRecord Record of a label applied to a document
type LabelRecord struct {
// AppliedAt Timestamp when label was applied
AppliedAt time.Time `json:"appliedAt"`
// AppliedBy Email of the user who applied this label
AppliedBy openapi_types.Email `json:"appliedBy"`
// DocumentId The document id.
DocumentId DocumentID `json:"documentId"`
// Id Label record ID
Id openapi_types.UUID `json:"id"`
// Label Workflow label name (alphanumeric and underscore only)
Label string `json:"label"`
}
// ListDocuments The documents in the client.
type ListDocuments = []DocumentSummary
// SchemaStatus Lifecycle state of a client_metadata_schemas row. `active` is
// the version currently assignable to new documents. `superseded`
// is automatically set when a newer version of the same (clientId,
// name) lineage is created via POST /versions. `retired` is set
// when a super_admin explicitly deletes an unused schema.
type SchemaStatus string
// SingleFields Single-value fields for a document extraction (1:1 relationship)
type SingleFields struct {
// AareteDerivedAmendmentNum Amendment number derived by Aarete
AareteDerivedAmendmentNum *int32 `json:"aareteDerivedAmendmentNum,omitempty"`
// AareteDerivedEffectiveDt Contract effective date
AareteDerivedEffectiveDt *openapi_types.Date `json:"aareteDerivedEffectiveDt,omitempty"`
// AareteDerivedTerminationDt Contract termination date
AareteDerivedTerminationDt *openapi_types.Date `json:"aareteDerivedTerminationDt,omitempty"`
// AutoRenewalInd Auto-renewal indicator
AutoRenewalInd *bool `json:"autoRenewalInd,omitempty"`
// AutoRenewalTerm Auto-renewal terms
AutoRenewalTerm *string `json:"autoRenewalTerm,omitempty"`
// ClientName Name of the client
ClientName *string `json:"clientName,omitempty"`
// ContractTitle Title of the contract
ContractTitle *string `json:"contractTitle,omitempty"`
// FileName Original file name
FileName *string `json:"fileName,omitempty"`
// FilenameTin Tax Identification Number from filename
FilenameTin *string `json:"filenameTin,omitempty"`
// PayerName Name of the payer
PayerName *string `json:"payerName,omitempty"`
// PayerState Two-letter state code for payer
PayerState *string `json:"payerState,omitempty"`
// ProvGroupNameFull Full name of provider group
ProvGroupNameFull *string `json:"provGroupNameFull,omitempty"`
// ProvGroupNpi Provider group NPI
ProvGroupNpi *string `json:"provGroupNpi,omitempty"`
// ProvGroupTin Provider group TIN
ProvGroupTin *string `json:"provGroupTin,omitempty"`
// ProvOtherNameFull Full name of other provider
ProvOtherNameFull *string `json:"provOtherNameFull,omitempty"`
// ProvOtherNpi Other provider NPI
ProvOtherNpi *string `json:"provOtherNpi,omitempty"`
// ProvOtherTin Other provider TIN
ProvOtherTin *string `json:"provOtherTin,omitempty"`
// ProviderState Two-letter state code for provider
ProviderState *string `json:"providerState,omitempty"`
}
// UISetting A UI setting record
type UISetting struct {
CreatedAt time.Time `json:"createdAt"`
Id openapi_types.UUID `json:"id"`
IsDeleted bool `json:"isDeleted"`
Key string `json:"key"`
Namespace string `json:"namespace"`
UpdatedAt time.Time `json:"updatedAt"`
Value map[string]interface{} `json:"value"`
}
// UISettingCreate Request body for creating a UI setting
type UISettingCreate struct {
// Key Setting key within the namespace
Key string `json:"key"`
// Namespace Scope for the setting (e.g. demo-dashboard:{userId}, feature-flags:global, saved-filters:{clientId})
Namespace string `json:"namespace"`
// Value JSON value (object) for the setting
Value map[string]interface{} `json:"value"`
}
// UISettingListResponse List of UI settings
type UISettingListResponse struct {
Settings []UISetting `json:"settings"`
TotalCount int32 `json:"totalCount"`
}
// UISettingUpdate Request body for updating a UI setting
type UISettingUpdate struct {
// Value New JSON value for the setting
Value map[string]interface{} `json:"value"`
}
// Version The desired version.
type Version = int32
// BotClientID defines model for BotClientID.
type BotClientID = string
// BotSessionID defines model for BotSessionID.
type BotSessionID = openapi_types.UUID
// EulaVersionID defines model for EulaVersionID.
type EulaVersionID = openapi_types.UUID
// M5DocumentID defines model for M5DocumentID.
type M5DocumentID = openapi_types.UUID
// UISettingID defines model for UISettingID.
type UISettingID = openapi_types.UUID
// UserEmail defines model for UserEmail.
type UserEmail = openapi_types.Email
// BadGateway Description of error
type BadGateway = ErrorMessage
// Conflict Description of error
type Conflict = ErrorMessage
// Forbidden Description of error
type Forbidden = ErrorMessage
// InternalError Description of error
type InternalError = ErrorMessage
// InvalidRequest Description of error
type InvalidRequest = ErrorMessage
// NotFound Description of error
type NotFound = ErrorMessage
// TooManyRequests Description of error
type TooManyRequests = ErrorMessage
// Unauthorized Description of error
type Unauthorized = ErrorMessage
// ListEulaVersionsParams defines parameters for ListEulaVersions.
type ListEulaVersionsParams struct {
// Page Page number for pagination
Page *int32 `form:"page,omitempty" json:"page,omitempty"`
// PageSize Number of items per page
PageSize *int32 `form:"page_size,omitempty" json:"page_size,omitempty"`
}
// ListEulaAgreementsParams defines parameters for ListEulaAgreements.
type ListEulaAgreementsParams struct {
// Page Page number for pagination
Page *int32 `form:"page,omitempty" json:"page,omitempty"`
// PageSize Number of items per page
PageSize *int32 `form:"page_size,omitempty" json:"page_size,omitempty"`
// VersionId Filter by specific EULA version ID
VersionId *openapi_types.UUID `form:"version_id,omitempty" json:"version_id,omitempty"`
// UserId Filter by Cognito subject ID to see all EULAs a specific user agreed to
UserId *string `form:"user_id,omitempty" json:"user_id,omitempty"`
}
// GetEulaComplianceParams defines parameters for GetEulaCompliance.
type GetEulaComplianceParams struct {
// Page Page number for pagination
Page *int32 `form:"page,omitempty" json:"page,omitempty"`
// PageSize Number of items per page
PageSize *int32 `form:"page_size,omitempty" json:"page_size,omitempty"`
// VersionId Specific EULA version to report on. If omitted, uses current active version.
VersionId *openapi_types.UUID `form:"version_id,omitempty" json:"version_id,omitempty"`
// Agreed Filter by agreement status. True for agreed only, false for not-agreed only.
Agreed *bool `form:"agreed,omitempty" json:"agreed,omitempty"`
}
// ListAdminUsersParams defines parameters for ListAdminUsers.
type ListAdminUsersParams struct {
// Page Page number for pagination
Page *int32 `form:"page,omitempty" json:"page,omitempty"`
// PageSize Number of results per page
PageSize *int32 `form:"page_size,omitempty" json:"page_size,omitempty"`
// Search Search term for email/name filtering
Search *string `form:"search,omitempty" json:"search,omitempty"`
// Status Filter by user status
Status *ListAdminUsersParamsStatus `form:"status,omitempty" json:"status,omitempty"`
// SortBy Field to sort by
SortBy *ListAdminUsersParamsSortBy `form:"sort_by,omitempty" json:"sort_by,omitempty"`
// SortOrder Sort direction
SortOrder *ListAdminUsersParamsSortOrder `form:"sort_order,omitempty" json:"sort_order,omitempty"`
}
// ListAdminUsersParamsStatus defines parameters for ListAdminUsers.
type ListAdminUsersParamsStatus string
// ListAdminUsersParamsSortBy defines parameters for ListAdminUsers.
type ListAdminUsersParamsSortBy string
// ListAdminUsersParamsSortOrder defines parameters for ListAdminUsers.
type ListAdminUsersParamsSortOrder string
// DeleteAdminUserParams defines parameters for DeleteAdminUser.
type DeleteAdminUserParams struct {
// Confirm Must be set to true to confirm deletion
Confirm bool `form:"confirm" json:"confirm"`
}
// ListBotSessionsParams defines parameters for ListBotSessions.
type ListBotSessionsParams struct {
// Limit Maximum number of sessions to return (1-200, default 20).
Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`
// Offset Number of sessions to skip for pagination (default 0).
Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`
}
// DeleteClientParams defines parameters for DeleteClient.
type DeleteClientParams struct {
// Confirm Must be set to true to confirm deletion
Confirm bool `form:"confirm" json:"confirm"`
// Verbose When true, returns S3 paths of orphaned source documents in the response body
Verbose *bool `form:"verbose,omitempty" json:"verbose,omitempty"`
}
// UploadDocumentMultipartBody defines parameters for UploadDocument.
type UploadDocumentMultipartBody struct {
// File The file to upload
File openapi_types.File `json:"file"`
// Filename Optional custom filename
Filename *string `json:"filename,omitempty"`
}
// ListDocumentBatchesParams defines parameters for ListDocumentBatches.
type ListDocumentBatchesParams struct {
// Limit Maximum number of items to return
Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`
// Offset Number of items to skip
Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`
}
// UploadDocumentBatchMultipartBody defines parameters for UploadDocumentBatch.
type UploadDocumentBatchMultipartBody struct {
// Archive The file to be uploaded as a ZIP archive
Archive openapi_types.File `json:"archive"`
}
// ListClientFoldersParams defines parameters for ListClientFolders.
type ListClientFoldersParams struct {
// Metrics When true, include processing metrics for each folder (document counts by label).
// Defaults to false for performance reasons.
Metrics *bool `form:"metrics,omitempty" json:"metrics,omitempty"`
}
// GetCurrentCustomMetadataParams defines parameters for GetCurrentCustomMetadata.
type GetCurrentCustomMetadataParams struct {
// DocumentId The document whose current metadata is being requested.
DocumentId openapi_types.UUID `form:"documentId" json:"documentId"`
}
// GetCustomMetadataHistoryParams defines parameters for GetCustomMetadataHistory.
type GetCustomMetadataHistoryParams struct {
// DocumentId The document whose metadata history is being requested.
DocumentId openapi_types.UUID `form:"documentId" json:"documentId"`
// Limit Maximum number of version summaries to return per page (1-200, default 50).
Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`
// Offset Number of version summaries to skip before the page starts (default 0).
Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`
}
// GetCustomMetadataByVersionParams defines parameters for GetCustomMetadataByVersion.
type GetCustomMetadataByVersionParams struct {
// DocumentId The document whose historical metadata version is being requested.
DocumentId openapi_types.UUID `form:"documentId" json:"documentId"`
// Version The metadata version number (>= 1) to return.
Version int32 `form:"version" json:"version"`
}
// DeleteDocumentParams defines parameters for DeleteDocument.
type DeleteDocumentParams struct {
// Verbose When true, returns S3 paths of orphaned source documents in the response body
Verbose *bool `form:"verbose,omitempty" json:"verbose,omitempty"`
}
// GetDocumentParams defines parameters for GetDocument.
type GetDocumentParams struct {
// TextRecord When true, includes the full text extraction record in the response
TextRecord *bool `form:"textRecord,omitempty" json:"textRecord,omitempty"`
}
// GetCurrentFieldExtractionParams defines parameters for GetCurrentFieldExtraction.
type GetCurrentFieldExtractionParams struct {
// DocumentId The document ID
DocumentId openapi_types.UUID `form:"documentId" json:"documentId"`
}
// GetFieldExtractionHistoryParams defines parameters for GetFieldExtractionHistory.
type GetFieldExtractionHistoryParams struct {
// DocumentId The document ID
DocumentId openapi_types.UUID `form:"documentId" json:"documentId"`
}
// GetFieldExtractionByVersionParams defines parameters for GetFieldExtractionByVersion.
type GetFieldExtractionByVersionParams struct {
// DocumentId The document ID
DocumentId openapi_types.UUID `form:"documentId" json:"documentId"`
// Version The version number to retrieve
Version int64 `form:"version" json:"version"`
}
// DeleteFolderParams defines parameters for DeleteFolder.
type DeleteFolderParams struct {
// IncludeDocuments When true, also deletes all documents in the folder tree
IncludeDocuments *bool `form:"include_documents,omitempty" json:"include_documents,omitempty"`
// Verbose When true, returns S3 paths of orphaned source documents in the response body
Verbose *bool `form:"verbose,omitempty" json:"verbose,omitempty"`
}
// GetFolderDocumentsParams defines parameters for GetFolderDocuments.
type GetFolderDocumentsParams struct {
// TextRecord When true, includes the full text extraction record for each document
TextRecord *bool `form:"textRecord,omitempty" json:"textRecord,omitempty"`
}
// GetDocumentsByLabelParams defines parameters for GetDocumentsByLabel.
type GetDocumentsByLabelParams struct {
// ClientId The client ID to filter documents
ClientId ClientID `form:"clientId" json:"clientId"`
}
// LoginCallbackParams defines parameters for LoginCallback.
type LoginCallbackParams struct {
// Code Authorization code from Cognito
Code string `form:"code" json:"code"`
// State State parameter for CSRF protection
State string `form:"state" json:"state"`
}
// ListBotSessionsAsSuperAdminParams defines parameters for ListBotSessionsAsSuperAdmin.
type ListBotSessionsAsSuperAdminParams struct {
// ClientId The client whose sessions to list.
ClientId string `form:"clientId" json:"clientId"`
// Limit Maximum number of sessions to return (1-200, default 20).
Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`
// Offset Number of sessions to skip for pagination (default 0).
Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`
}
// DeleteBotSessionAsSuperAdminParams defines parameters for DeleteBotSessionAsSuperAdmin.
type DeleteBotSessionAsSuperAdminParams struct {
// ClientId The client that owns the session.
ClientId string `form:"clientId" json:"clientId"`
}
// GetBotSessionAsSuperAdminParams defines parameters for GetBotSessionAsSuperAdmin.
type GetBotSessionAsSuperAdminParams struct {
// ClientId The client that owns the session.
ClientId string `form:"clientId" json:"clientId"`
}
// ListCustomSchemasParams defines parameters for ListCustomSchemas.
type ListCustomSchemasParams struct {
// ClientId The client whose schemas to list.
ClientId string `form:"clientId" json:"clientId"`
// Name Filter by schema name (exact match).
Name *string `form:"name,omitempty" json:"name,omitempty"`
// Status Filter by lifecycle status. The sentinel `any` returns rows in all statuses. Defaults to `active` when omitted.
Status *ListCustomSchemasParamsStatus `form:"status,omitempty" json:"status,omitempty"`
// IncludeAllVersions When false, return only the latest version per (clientId, name) lineage. When true, return every version that matches the other filters.
IncludeAllVersions *bool `form:"includeAllVersions,omitempty" json:"includeAllVersions,omitempty"`
// Limit Maximum number of results to return.
Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`
// Offset Number of results to skip for pagination.
Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`
}
// ListCustomSchemasParamsStatus defines parameters for ListCustomSchemas.
type ListCustomSchemasParamsStatus string
// ListUISettingsParams defines parameters for ListUISettings.
type ListUISettingsParams struct {
// Namespace Filter by namespace (omit to list all).
Namespace *string `form:"namespace,omitempty" json:"namespace,omitempty"`
}
// CreateEulaVersionJSONRequestBody defines body for CreateEulaVersion for application/json ContentType.
type CreateEulaVersionJSONRequestBody = EulaVersionCreate
// UpdateEulaVersionJSONRequestBody defines body for UpdateEulaVersion for application/json ContentType.
type UpdateEulaVersionJSONRequestBody = EulaVersionUpdate
// CreateAdminUserJSONRequestBody defines body for CreateAdminUser for application/json ContentType.
type CreateAdminUserJSONRequestBody = AdminUserCreate
// UpdateAdminUserJSONRequestBody defines body for UpdateAdminUser for application/json ContentType.
type UpdateAdminUserJSONRequestBody = AdminUserUpdate
// CreateClientJSONRequestBody defines body for CreateClient for application/json ContentType.
type CreateClientJSONRequestBody = ClientCreate
// CreateBotSessionJSONRequestBody defines body for CreateBotSession for application/json ContentType.
type CreateBotSessionJSONRequestBody = CreateBotSessionRequest
// PatchBotSessionScopeJSONRequestBody defines body for PatchBotSessionScope for application/json ContentType.
type PatchBotSessionScopeJSONRequestBody = BotSessionScopePatchRequest
// CreateBotTurnJSONRequestBody defines body for CreateBotTurn for application/json ContentType.
type CreateBotTurnJSONRequestBody = CreateBotTurnRequest
// UpdateClientJSONRequestBody defines body for UpdateClient for application/json ContentType.
type UpdateClientJSONRequestBody = ClientUpdate
// SetCollectorByClientIdJSONRequestBody defines body for SetCollectorByClientId for application/json ContentType.
type SetCollectorByClientIdJSONRequestBody = CollectorSet
// UploadDocumentMultipartRequestBody defines body for UploadDocument for multipart/form-data ContentType.
type UploadDocumentMultipartRequestBody UploadDocumentMultipartBody
// UploadDocumentBatchMultipartRequestBody defines body for UploadDocumentBatch for multipart/form-data ContentType.
type UploadDocumentBatchMultipartRequestBody UploadDocumentBatchMultipartBody
// TriggerExportJSONRequestBody defines body for TriggerExport for application/json ContentType.
type TriggerExportJSONRequestBody = ExportTrigger
// SetCustomMetadataJSONRequestBody defines body for SetCustomMetadata for application/json ContentType.
type SetCustomMetadataJSONRequestBody = CustomMetadataRequest
// ApplyLabelJSONRequestBody defines body for ApplyLabel for application/json ContentType.
type ApplyLabelJSONRequestBody = LabelApplication
// CreateFieldExtractionJSONRequestBody defines body for CreateFieldExtraction for application/json ContentType.
type CreateFieldExtractionJSONRequestBody = FieldExtractionRequest
// CreateFolderJSONRequestBody defines body for CreateFolder for application/json ContentType.
type CreateFolderJSONRequestBody = FolderCreate
// RenameFolderJSONRequestBody defines body for RenameFolder for application/json ContentType.
type RenameFolderJSONRequestBody = FolderRename
// CreateCustomSchemaJSONRequestBody defines body for CreateCustomSchema for application/json ContentType.
type CreateCustomSchemaJSONRequestBody = CustomSchemaRequest
// CreateCustomSchemaVersionJSONRequestBody defines body for CreateCustomSchemaVersion for application/json ContentType.
type CreateCustomSchemaVersionJSONRequestBody = CustomSchemaVersionRequest
// AssignDocumentSchemaJSONRequestBody defines body for AssignDocumentSchema for application/json ContentType.
type AssignDocumentSchemaJSONRequestBody = DocumentSchemaAssignRequest
// CreateUISettingJSONRequestBody defines body for CreateUISetting for application/json ContentType.
type CreateUISettingJSONRequestBody = UISettingCreate
// UpdateUISettingJSONRequestBody defines body for UpdateUISetting for application/json ContentType.
type UpdateUISettingJSONRequestBody = UISettingUpdate
// ServerInterface represents all server handlers.
type ServerInterface interface {
// List all EULA versions
// (GET /admin/eula)
ListEulaVersions(ctx echo.Context, params ListEulaVersionsParams) error
// Create a new EULA version
// (POST /admin/eula)
CreateEulaVersion(ctx echo.Context) error
// List EULA agreements
// (GET /admin/eula/agreements)
ListEulaAgreements(ctx echo.Context, params ListEulaAgreementsParams) error
// Get EULA compliance report
// (GET /admin/eula/compliance)
GetEulaCompliance(ctx echo.Context, params GetEulaComplianceParams) error
// Get a specific EULA version
// (GET /admin/eula/{version_id})
GetEulaVersion(ctx echo.Context, versionId EulaVersionID) error
// Update EULA version metadata
// (PATCH /admin/eula/{version_id})
UpdateEulaVersion(ctx echo.Context, versionId EulaVersionID) error
// Activate an EULA version
// (POST /admin/eula/{version_id}/activate)
ActivateEulaVersion(ctx echo.Context, versionId EulaVersionID) error
// List users
// (GET /admin/users)
ListAdminUsers(ctx echo.Context, params ListAdminUsersParams) error
// Create a new user
// (POST /admin/users)
CreateAdminUser(ctx echo.Context) error
// Delete user permanently
// (DELETE /admin/users/{email})
DeleteAdminUser(ctx echo.Context, email UserEmail, params DeleteAdminUserParams) error
// Get user by email
// (GET /admin/users/{email})
GetAdminUser(ctx echo.Context, email UserEmail) error
// Check if user exists
// (HEAD /admin/users/{email})
CheckAdminUserExists(ctx echo.Context, email UserEmail) error
// Update user attributes and roles
// (PATCH /admin/users/{email})
UpdateAdminUser(ctx echo.Context, email UserEmail) error
// Disable user
// (POST /admin/users/{email}/disable)
DisableAdminUser(ctx echo.Context, email UserEmail) error
// Enable user
// (POST /admin/users/{email}/enable)
EnableAdminUser(ctx echo.Context, email UserEmail) error
// Create a new client
// (POST /client)
CreateClient(ctx echo.Context) error
// List the caller's chatbot sessions for a client
// (GET /client/{clientId}/bot/sessions)
ListBotSessions(ctx echo.Context, clientId BotClientID, params ListBotSessionsParams) error
// Create a new chatbot session
// (POST /client/{clientId}/bot/sessions)
CreateBotSession(ctx echo.Context, clientId BotClientID) error
// Get one chatbot session by id
// (GET /client/{clientId}/bot/sessions/{sessionId})
GetBotSession(ctx echo.Context, clientId BotClientID, sessionId BotSessionID) error
// Patch a session's document/folder scope
// (PATCH /client/{clientId}/bot/sessions/{sessionId}/scope)
PatchBotSessionScope(ctx echo.Context, clientId BotClientID, sessionId BotSessionID) error
// List all turns for a chatbot session
// (GET /client/{clientId}/bot/sessions/{sessionId}/turns)
ListBotTurns(ctx echo.Context, clientId BotClientID, sessionId BotSessionID) error
// Submit a new chatbot turn
// (POST /client/{clientId}/bot/sessions/{sessionId}/turns)
CreateBotTurn(ctx echo.Context, clientId BotClientID, sessionId BotSessionID) error
// Get document metadata bundle (document + labels + customMetadata)
// (GET /client/{clientId}/documents/{documentId}/all-metadata)
GetDocumentAllMetadata(ctx echo.Context, clientId BotClientID, documentId M5DocumentID) error
// Get the bound custom schema for a document
// (GET /client/{clientId}/documents/{documentId}/schema)
GetDocumentSchema(ctx echo.Context, clientId BotClientID, documentId M5DocumentID) error
// Hard-delete a client and all its data
// (DELETE /client/{id})
DeleteClient(ctx echo.Context, id ClientID, params DeleteClientParams) error
// Get a client by ID
// (GET /client/{id})
GetClient(ctx echo.Context, id ClientID) error
// Update a client
// (PATCH /client/{id})
UpdateClient(ctx echo.Context, id ClientID) error
// Get a collector by client ID
// (GET /client/{id}/collector)
GetCollectorByClientId(ctx echo.Context, id ClientID) error
// Set a collector
// (PATCH /client/{id}/collector)
SetCollectorByClientId(ctx echo.Context, id ClientID) error
// List the documents for a client
// (GET /client/{id}/document)
ListDocumentsByClientId(ctx echo.Context, id ClientID) error
// Upload a file
// (POST /client/{id}/document)
UploadDocument(ctx echo.Context, id ClientID) error
// List batch uploads for a client
// (GET /client/{id}/document/batch)
ListDocumentBatches(ctx echo.Context, id ClientID, params ListDocumentBatchesParams) error
// Upload multiple PDF documents as ZIP archive
// (POST /client/{id}/document/batch)
UploadDocumentBatch(ctx echo.Context, id ClientID) error
// Get batch upload status
// (GET /client/{id}/document/batch/{batch_id})
GetDocumentBatch(ctx echo.Context, id ClientID, batchId BatchID) error
// Trigger an export
// (POST /client/{id}/export)
TriggerExport(ctx echo.Context, id ClientID) error
// List folders for a client
// (GET /client/{id}/folders)
ListClientFolders(ctx echo.Context, id ClientID, params ListClientFoldersParams) error
// Get client sync status
// (GET /client/{id}/status)
GetStatusByClientId(ctx echo.Context, id ClientID) error
// List all clients
// (GET /clients)
ListClients(ctx echo.Context) error
// Get the current custom metadata row for a document
// (GET /custom-metadata)
GetCurrentCustomMetadata(ctx echo.Context, params GetCurrentCustomMetadataParams) error
// Write a new custom metadata version for a document
// (POST /custom-metadata)
SetCustomMetadata(ctx echo.Context) error
// List version summaries for a document's metadata
// (GET /custom-metadata/history)
GetCustomMetadataHistory(ctx echo.Context, params GetCustomMetadataHistoryParams) error
// Get a specific historical metadata version
// (GET /custom-metadata/version)
GetCustomMetadataByVersion(ctx echo.Context, params GetCustomMetadataByVersionParams) error
// Hard-delete a document
// (DELETE /document/{id})
DeleteDocument(ctx echo.Context, id DocumentID, params DeleteDocumentParams) error
// Get document details by its id
// (GET /document/{id})
GetDocument(ctx echo.Context, id DocumentID, params GetDocumentParams) error
// Download the original document file
// (GET /document/{id}/download)
DownloadDocument(ctx echo.Context, id DocumentID) error
// Get all labels for a document
// (GET /documents/{documentId}/labels)
GetDocumentLabels(ctx echo.Context, documentId openapi_types.UUID) error
// Apply a label to a document
// (POST /documents/{documentId}/labels)
ApplyLabel(ctx echo.Context, documentId openapi_types.UUID) error
// Get current EULA version
// (GET /eula)
GetCurrentEula(ctx echo.Context) error
// Record user agreement to current EULA
// (POST /eula/agree)
AgreeToEula(ctx echo.Context) error
// Check user's EULA agreement status
// (GET /eula/status)
GetEulaStatus(ctx echo.Context) error
// Check export state.
// (GET /export/{id})
ExportState(ctx echo.Context, id ExportID) error
// Get current field extraction
// (GET /field-extractions)
GetCurrentFieldExtraction(ctx echo.Context, params GetCurrentFieldExtractionParams) error
// Create a new field extraction
// (POST /field-extractions)
CreateFieldExtraction(ctx echo.Context) error
// Get field extraction version history
// (GET /field-extractions/history)
GetFieldExtractionHistory(ctx echo.Context, params GetFieldExtractionHistoryParams) error
// Get field extraction by version
// (GET /field-extractions/version)
GetFieldExtractionByVersion(ctx echo.Context, params GetFieldExtractionByVersionParams) error
// Create a new folder
// (POST /folders)
CreateFolder(ctx echo.Context) error
// Hard-delete a folder tree
// (DELETE /folders/{folderId})
DeleteFolder(ctx echo.Context, folderId openapi_types.UUID, params DeleteFolderParams) error
// Rename a folder
// (PATCH /folders/{folderId})
RenameFolder(ctx echo.Context, folderId openapi_types.UUID) error
// Get documents in a folder
// (GET /folders/{folderId}/documents)
GetFolderDocuments(ctx echo.Context, folderId openapi_types.UUID, params GetFolderDocumentsParams) error
// Get folder processing metrics
// (GET /folders/{folderId}/metrics)
GetFolderMetrics(ctx echo.Context, folderId openapi_types.UUID) error
// Get the home page menu
// (GET /home)
GetHomePage(ctx echo.Context) error
// Get current user identity and roles
// (GET /identity)
GetIdentity(ctx echo.Context) error
// Get all documents with a specific label
// (GET /labels/{labelName}/documents)
GetDocumentsByLabel(ctx echo.Context, labelName string, params GetDocumentsByLabelParams) error
// Login to the application
// (GET /login)
Login(ctx echo.Context) error
// OAuth2 callback endpoint
// (GET /login-callback)
LoginCallback(ctx echo.Context, params LoginCallbackParams) error
// Logout from the application
// (GET /logout)
Logout(ctx echo.Context) error
// List chatbot sessions for a client (super-admin)
// (GET /super-admin/bot/sessions)
ListBotSessionsAsSuperAdmin(ctx echo.Context, params ListBotSessionsAsSuperAdminParams) error
// Soft-delete a chatbot session (super-admin)
// (DELETE /super-admin/bot/sessions/{sessionId})
DeleteBotSessionAsSuperAdmin(ctx echo.Context, sessionId BotSessionID, params DeleteBotSessionAsSuperAdminParams) error
// Get one chatbot session by id (super-admin)
// (GET /super-admin/bot/sessions/{sessionId})
GetBotSessionAsSuperAdmin(ctx echo.Context, sessionId BotSessionID, params GetBotSessionAsSuperAdminParams) error
// List custom metadata schemas for a client
// (GET /super-admin/custom-schemas)
ListCustomSchemas(ctx echo.Context, params ListCustomSchemasParams) error
// Create a custom metadata schema
// (POST /super-admin/custom-schemas)
CreateCustomSchema(ctx echo.Context) error
// Retire a custom metadata schema
// (DELETE /super-admin/custom-schemas/{schemaId})
DeleteCustomSchema(ctx echo.Context, schemaId openapi_types.UUID) error
// Get a custom metadata schema by ID
// (GET /super-admin/custom-schemas/{schemaId})
GetCustomSchema(ctx echo.Context, schemaId openapi_types.UUID) error
// Create a new version of a custom metadata schema
// (POST /super-admin/custom-schemas/{schemaId}/versions)
CreateCustomSchemaVersion(ctx echo.Context, schemaId openapi_types.UUID) error
// Reset a document's custom metadata and schema binding
// (POST /super-admin/documents/{id}/reset-metadata)
ResetDocumentMetadata(ctx echo.Context, id openapi_types.UUID) error
// Assign (or clear) a custom schema for a document
// (PATCH /super-admin/documents/{id}/schema)
AssignDocumentSchema(ctx echo.Context, id openapi_types.UUID) error
// List UI settings
// (GET /ui-settings)
ListUISettings(ctx echo.Context, params ListUISettingsParams) error
// Create a UI setting
// (POST /ui-settings)
CreateUISetting(ctx echo.Context) error
// Soft-delete a UI setting
// (DELETE /ui-settings/{id})
DeleteUISetting(ctx echo.Context, id UISettingID) error
// Get a UI setting by ID
// (GET /ui-settings/{id})
GetUISetting(ctx echo.Context, id UISettingID) error
// Update a UI setting
// (PATCH /ui-settings/{id})
UpdateUISetting(ctx echo.Context, id UISettingID) error
}
// ServerInterfaceWrapper converts echo contexts to parameters.
type ServerInterfaceWrapper struct {
Handler ServerInterface
}
// ListEulaVersions converts echo context to params.
func (w *ServerInterfaceWrapper) ListEulaVersions(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params ListEulaVersionsParams
// ------------- Optional query parameter "page" -------------
err = runtime.BindQueryParameter("form", true, false, "page", ctx.QueryParams(), &params.Page)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter page: %s", err))
}
// ------------- Optional query parameter "page_size" -------------
err = runtime.BindQueryParameter("form", true, false, "page_size", ctx.QueryParams(), &params.PageSize)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter page_size: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.ListEulaVersions(ctx, params)
return err
}
// CreateEulaVersion converts echo context to params.
func (w *ServerInterfaceWrapper) CreateEulaVersion(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.CreateEulaVersion(ctx)
return err
}
// ListEulaAgreements converts echo context to params.
func (w *ServerInterfaceWrapper) ListEulaAgreements(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params ListEulaAgreementsParams
// ------------- Optional query parameter "page" -------------
err = runtime.BindQueryParameter("form", true, false, "page", ctx.QueryParams(), &params.Page)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter page: %s", err))
}
// ------------- Optional query parameter "page_size" -------------
err = runtime.BindQueryParameter("form", true, false, "page_size", ctx.QueryParams(), &params.PageSize)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter page_size: %s", err))
}
// ------------- Optional query parameter "version_id" -------------
err = runtime.BindQueryParameter("form", true, false, "version_id", ctx.QueryParams(), &params.VersionId)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter version_id: %s", err))
}
// ------------- Optional query parameter "user_id" -------------
err = runtime.BindQueryParameter("form", true, false, "user_id", ctx.QueryParams(), &params.UserId)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter user_id: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.ListEulaAgreements(ctx, params)
return err
}
// GetEulaCompliance converts echo context to params.
func (w *ServerInterfaceWrapper) GetEulaCompliance(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params GetEulaComplianceParams
// ------------- Optional query parameter "page" -------------
err = runtime.BindQueryParameter("form", true, false, "page", ctx.QueryParams(), &params.Page)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter page: %s", err))
}
// ------------- Optional query parameter "page_size" -------------
err = runtime.BindQueryParameter("form", true, false, "page_size", ctx.QueryParams(), &params.PageSize)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter page_size: %s", err))
}
// ------------- Optional query parameter "version_id" -------------
err = runtime.BindQueryParameter("form", true, false, "version_id", ctx.QueryParams(), &params.VersionId)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter version_id: %s", err))
}
// ------------- Optional query parameter "agreed" -------------
err = runtime.BindQueryParameter("form", true, false, "agreed", ctx.QueryParams(), &params.Agreed)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter agreed: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetEulaCompliance(ctx, params)
return err
}
// GetEulaVersion converts echo context to params.
func (w *ServerInterfaceWrapper) GetEulaVersion(ctx echo.Context) error {
var err error
// ------------- Path parameter "version_id" -------------
var versionId EulaVersionID
err = runtime.BindStyledParameterWithOptions("simple", "version_id", ctx.Param("version_id"), &versionId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter version_id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetEulaVersion(ctx, versionId)
return err
}
// UpdateEulaVersion converts echo context to params.
func (w *ServerInterfaceWrapper) UpdateEulaVersion(ctx echo.Context) error {
var err error
// ------------- Path parameter "version_id" -------------
var versionId EulaVersionID
err = runtime.BindStyledParameterWithOptions("simple", "version_id", ctx.Param("version_id"), &versionId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter version_id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.UpdateEulaVersion(ctx, versionId)
return err
}
// ActivateEulaVersion converts echo context to params.
func (w *ServerInterfaceWrapper) ActivateEulaVersion(ctx echo.Context) error {
var err error
// ------------- Path parameter "version_id" -------------
var versionId EulaVersionID
err = runtime.BindStyledParameterWithOptions("simple", "version_id", ctx.Param("version_id"), &versionId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter version_id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.ActivateEulaVersion(ctx, versionId)
return err
}
// ListAdminUsers converts echo context to params.
func (w *ServerInterfaceWrapper) ListAdminUsers(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params ListAdminUsersParams
// ------------- Optional query parameter "page" -------------
err = runtime.BindQueryParameter("form", true, false, "page", ctx.QueryParams(), &params.Page)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter page: %s", err))
}
// ------------- Optional query parameter "page_size" -------------
err = runtime.BindQueryParameter("form", true, false, "page_size", ctx.QueryParams(), &params.PageSize)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter page_size: %s", err))
}
// ------------- Optional query parameter "search" -------------
err = runtime.BindQueryParameter("form", true, false, "search", ctx.QueryParams(), &params.Search)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter search: %s", err))
}
// ------------- Optional query parameter "status" -------------
err = runtime.BindQueryParameter("form", true, false, "status", ctx.QueryParams(), &params.Status)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter status: %s", err))
}
// ------------- Optional query parameter "sort_by" -------------
err = runtime.BindQueryParameter("form", true, false, "sort_by", ctx.QueryParams(), &params.SortBy)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter sort_by: %s", err))
}
// ------------- Optional query parameter "sort_order" -------------
err = runtime.BindQueryParameter("form", true, false, "sort_order", ctx.QueryParams(), &params.SortOrder)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter sort_order: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.ListAdminUsers(ctx, params)
return err
}
// CreateAdminUser converts echo context to params.
func (w *ServerInterfaceWrapper) CreateAdminUser(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.CreateAdminUser(ctx)
return err
}
// DeleteAdminUser converts echo context to params.
func (w *ServerInterfaceWrapper) DeleteAdminUser(ctx echo.Context) error {
var err error
// ------------- Path parameter "email" -------------
var email UserEmail
err = runtime.BindStyledParameterWithOptions("simple", "email", ctx.Param("email"), &email, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter email: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params DeleteAdminUserParams
// ------------- Required query parameter "confirm" -------------
err = runtime.BindQueryParameter("form", true, true, "confirm", ctx.QueryParams(), &params.Confirm)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter confirm: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.DeleteAdminUser(ctx, email, params)
return err
}
// GetAdminUser converts echo context to params.
func (w *ServerInterfaceWrapper) GetAdminUser(ctx echo.Context) error {
var err error
// ------------- Path parameter "email" -------------
var email UserEmail
err = runtime.BindStyledParameterWithOptions("simple", "email", ctx.Param("email"), &email, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter email: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetAdminUser(ctx, email)
return err
}
// CheckAdminUserExists converts echo context to params.
func (w *ServerInterfaceWrapper) CheckAdminUserExists(ctx echo.Context) error {
var err error
// ------------- Path parameter "email" -------------
var email UserEmail
err = runtime.BindStyledParameterWithOptions("simple", "email", ctx.Param("email"), &email, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter email: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.CheckAdminUserExists(ctx, email)
return err
}
// UpdateAdminUser converts echo context to params.
func (w *ServerInterfaceWrapper) UpdateAdminUser(ctx echo.Context) error {
var err error
// ------------- Path parameter "email" -------------
var email UserEmail
err = runtime.BindStyledParameterWithOptions("simple", "email", ctx.Param("email"), &email, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter email: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.UpdateAdminUser(ctx, email)
return err
}
// DisableAdminUser converts echo context to params.
func (w *ServerInterfaceWrapper) DisableAdminUser(ctx echo.Context) error {
var err error
// ------------- Path parameter "email" -------------
var email UserEmail
err = runtime.BindStyledParameterWithOptions("simple", "email", ctx.Param("email"), &email, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter email: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.DisableAdminUser(ctx, email)
return err
}
// EnableAdminUser converts echo context to params.
func (w *ServerInterfaceWrapper) EnableAdminUser(ctx echo.Context) error {
var err error
// ------------- Path parameter "email" -------------
var email UserEmail
err = runtime.BindStyledParameterWithOptions("simple", "email", ctx.Param("email"), &email, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter email: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.EnableAdminUser(ctx, email)
return err
}
// CreateClient converts echo context to params.
func (w *ServerInterfaceWrapper) CreateClient(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.CreateClient(ctx)
return err
}
// ListBotSessions converts echo context to params.
func (w *ServerInterfaceWrapper) ListBotSessions(ctx echo.Context) error {
var err error
// ------------- Path parameter "clientId" -------------
var clientId BotClientID
err = runtime.BindStyledParameterWithOptions("simple", "clientId", ctx.Param("clientId"), &clientId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter clientId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params ListBotSessionsParams
// ------------- Optional query parameter "limit" -------------
err = runtime.BindQueryParameter("form", true, false, "limit", ctx.QueryParams(), &params.Limit)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter limit: %s", err))
}
// ------------- Optional query parameter "offset" -------------
err = runtime.BindQueryParameter("form", true, false, "offset", ctx.QueryParams(), &params.Offset)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter offset: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.ListBotSessions(ctx, clientId, params)
return err
}
// CreateBotSession converts echo context to params.
func (w *ServerInterfaceWrapper) CreateBotSession(ctx echo.Context) error {
var err error
// ------------- Path parameter "clientId" -------------
var clientId BotClientID
err = runtime.BindStyledParameterWithOptions("simple", "clientId", ctx.Param("clientId"), &clientId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter clientId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.CreateBotSession(ctx, clientId)
return err
}
// GetBotSession converts echo context to params.
func (w *ServerInterfaceWrapper) GetBotSession(ctx echo.Context) error {
var err error
// ------------- Path parameter "clientId" -------------
var clientId BotClientID
err = runtime.BindStyledParameterWithOptions("simple", "clientId", ctx.Param("clientId"), &clientId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter clientId: %s", err))
}
// ------------- Path parameter "sessionId" -------------
var sessionId BotSessionID
err = runtime.BindStyledParameterWithOptions("simple", "sessionId", ctx.Param("sessionId"), &sessionId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter sessionId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetBotSession(ctx, clientId, sessionId)
return err
}
// PatchBotSessionScope converts echo context to params.
func (w *ServerInterfaceWrapper) PatchBotSessionScope(ctx echo.Context) error {
var err error
// ------------- Path parameter "clientId" -------------
var clientId BotClientID
err = runtime.BindStyledParameterWithOptions("simple", "clientId", ctx.Param("clientId"), &clientId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter clientId: %s", err))
}
// ------------- Path parameter "sessionId" -------------
var sessionId BotSessionID
err = runtime.BindStyledParameterWithOptions("simple", "sessionId", ctx.Param("sessionId"), &sessionId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter sessionId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.PatchBotSessionScope(ctx, clientId, sessionId)
return err
}
// ListBotTurns converts echo context to params.
func (w *ServerInterfaceWrapper) ListBotTurns(ctx echo.Context) error {
var err error
// ------------- Path parameter "clientId" -------------
var clientId BotClientID
err = runtime.BindStyledParameterWithOptions("simple", "clientId", ctx.Param("clientId"), &clientId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter clientId: %s", err))
}
// ------------- Path parameter "sessionId" -------------
var sessionId BotSessionID
err = runtime.BindStyledParameterWithOptions("simple", "sessionId", ctx.Param("sessionId"), &sessionId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter sessionId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.ListBotTurns(ctx, clientId, sessionId)
return err
}
// CreateBotTurn converts echo context to params.
func (w *ServerInterfaceWrapper) CreateBotTurn(ctx echo.Context) error {
var err error
// ------------- Path parameter "clientId" -------------
var clientId BotClientID
err = runtime.BindStyledParameterWithOptions("simple", "clientId", ctx.Param("clientId"), &clientId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter clientId: %s", err))
}
// ------------- Path parameter "sessionId" -------------
var sessionId BotSessionID
err = runtime.BindStyledParameterWithOptions("simple", "sessionId", ctx.Param("sessionId"), &sessionId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter sessionId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.CreateBotTurn(ctx, clientId, sessionId)
return err
}
// GetDocumentAllMetadata converts echo context to params.
func (w *ServerInterfaceWrapper) GetDocumentAllMetadata(ctx echo.Context) error {
var err error
// ------------- Path parameter "clientId" -------------
var clientId BotClientID
err = runtime.BindStyledParameterWithOptions("simple", "clientId", ctx.Param("clientId"), &clientId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter clientId: %s", err))
}
// ------------- Path parameter "documentId" -------------
var documentId M5DocumentID
err = runtime.BindStyledParameterWithOptions("simple", "documentId", ctx.Param("documentId"), &documentId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter documentId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetDocumentAllMetadata(ctx, clientId, documentId)
return err
}
// GetDocumentSchema converts echo context to params.
func (w *ServerInterfaceWrapper) GetDocumentSchema(ctx echo.Context) error {
var err error
// ------------- Path parameter "clientId" -------------
var clientId BotClientID
err = runtime.BindStyledParameterWithOptions("simple", "clientId", ctx.Param("clientId"), &clientId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter clientId: %s", err))
}
// ------------- Path parameter "documentId" -------------
var documentId M5DocumentID
err = runtime.BindStyledParameterWithOptions("simple", "documentId", ctx.Param("documentId"), &documentId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter documentId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetDocumentSchema(ctx, clientId, documentId)
return err
}
// DeleteClient converts echo context to params.
func (w *ServerInterfaceWrapper) DeleteClient(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id ClientID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params DeleteClientParams
// ------------- Required query parameter "confirm" -------------
err = runtime.BindQueryParameter("form", true, true, "confirm", ctx.QueryParams(), &params.Confirm)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter confirm: %s", err))
}
// ------------- Optional query parameter "verbose" -------------
err = runtime.BindQueryParameter("form", true, false, "verbose", ctx.QueryParams(), &params.Verbose)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter verbose: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.DeleteClient(ctx, id, params)
return err
}
// GetClient converts echo context to params.
func (w *ServerInterfaceWrapper) GetClient(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id ClientID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetClient(ctx, id)
return err
}
// UpdateClient converts echo context to params.
func (w *ServerInterfaceWrapper) UpdateClient(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id ClientID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.UpdateClient(ctx, id)
return err
}
// GetCollectorByClientId converts echo context to params.
func (w *ServerInterfaceWrapper) GetCollectorByClientId(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id ClientID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetCollectorByClientId(ctx, id)
return err
}
// SetCollectorByClientId converts echo context to params.
func (w *ServerInterfaceWrapper) SetCollectorByClientId(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id ClientID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.SetCollectorByClientId(ctx, id)
return err
}
// ListDocumentsByClientId converts echo context to params.
func (w *ServerInterfaceWrapper) ListDocumentsByClientId(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id ClientID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.ListDocumentsByClientId(ctx, id)
return err
}
// UploadDocument converts echo context to params.
func (w *ServerInterfaceWrapper) UploadDocument(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id ClientID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.UploadDocument(ctx, id)
return err
}
// ListDocumentBatches converts echo context to params.
func (w *ServerInterfaceWrapper) ListDocumentBatches(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id ClientID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params ListDocumentBatchesParams
// ------------- Optional query parameter "limit" -------------
err = runtime.BindQueryParameter("form", true, false, "limit", ctx.QueryParams(), &params.Limit)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter limit: %s", err))
}
// ------------- Optional query parameter "offset" -------------
err = runtime.BindQueryParameter("form", true, false, "offset", ctx.QueryParams(), &params.Offset)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter offset: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.ListDocumentBatches(ctx, id, params)
return err
}
// UploadDocumentBatch converts echo context to params.
func (w *ServerInterfaceWrapper) UploadDocumentBatch(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id ClientID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.UploadDocumentBatch(ctx, id)
return err
}
// GetDocumentBatch converts echo context to params.
func (w *ServerInterfaceWrapper) GetDocumentBatch(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id ClientID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
// ------------- Path parameter "batch_id" -------------
var batchId BatchID
err = runtime.BindStyledParameterWithOptions("simple", "batch_id", ctx.Param("batch_id"), &batchId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter batch_id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetDocumentBatch(ctx, id, batchId)
return err
}
// TriggerExport converts echo context to params.
func (w *ServerInterfaceWrapper) TriggerExport(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id ClientID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.TriggerExport(ctx, id)
return err
}
// ListClientFolders converts echo context to params.
func (w *ServerInterfaceWrapper) ListClientFolders(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id ClientID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params ListClientFoldersParams
// ------------- Optional query parameter "metrics" -------------
err = runtime.BindQueryParameter("form", true, false, "metrics", ctx.QueryParams(), &params.Metrics)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter metrics: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.ListClientFolders(ctx, id, params)
return err
}
// GetStatusByClientId converts echo context to params.
func (w *ServerInterfaceWrapper) GetStatusByClientId(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id ClientID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetStatusByClientId(ctx, id)
return err
}
// ListClients converts echo context to params.
func (w *ServerInterfaceWrapper) ListClients(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.ListClients(ctx)
return err
}
// GetCurrentCustomMetadata converts echo context to params.
func (w *ServerInterfaceWrapper) GetCurrentCustomMetadata(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params GetCurrentCustomMetadataParams
// ------------- Required query parameter "documentId" -------------
err = runtime.BindQueryParameter("form", true, true, "documentId", ctx.QueryParams(), &params.DocumentId)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter documentId: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetCurrentCustomMetadata(ctx, params)
return err
}
// SetCustomMetadata converts echo context to params.
func (w *ServerInterfaceWrapper) SetCustomMetadata(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.SetCustomMetadata(ctx)
return err
}
// GetCustomMetadataHistory converts echo context to params.
func (w *ServerInterfaceWrapper) GetCustomMetadataHistory(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params GetCustomMetadataHistoryParams
// ------------- Required query parameter "documentId" -------------
err = runtime.BindQueryParameter("form", true, true, "documentId", ctx.QueryParams(), &params.DocumentId)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter documentId: %s", err))
}
// ------------- Optional query parameter "limit" -------------
err = runtime.BindQueryParameter("form", true, false, "limit", ctx.QueryParams(), &params.Limit)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter limit: %s", err))
}
// ------------- Optional query parameter "offset" -------------
err = runtime.BindQueryParameter("form", true, false, "offset", ctx.QueryParams(), &params.Offset)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter offset: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetCustomMetadataHistory(ctx, params)
return err
}
// GetCustomMetadataByVersion converts echo context to params.
func (w *ServerInterfaceWrapper) GetCustomMetadataByVersion(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params GetCustomMetadataByVersionParams
// ------------- Required query parameter "documentId" -------------
err = runtime.BindQueryParameter("form", true, true, "documentId", ctx.QueryParams(), &params.DocumentId)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter documentId: %s", err))
}
// ------------- Required query parameter "version" -------------
err = runtime.BindQueryParameter("form", true, true, "version", ctx.QueryParams(), &params.Version)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter version: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetCustomMetadataByVersion(ctx, params)
return err
}
// DeleteDocument converts echo context to params.
func (w *ServerInterfaceWrapper) DeleteDocument(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id DocumentID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params DeleteDocumentParams
// ------------- Optional query parameter "verbose" -------------
err = runtime.BindQueryParameter("form", true, false, "verbose", ctx.QueryParams(), &params.Verbose)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter verbose: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.DeleteDocument(ctx, id, params)
return err
}
// GetDocument converts echo context to params.
func (w *ServerInterfaceWrapper) GetDocument(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id DocumentID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params GetDocumentParams
// ------------- Optional query parameter "textRecord" -------------
err = runtime.BindQueryParameter("form", true, false, "textRecord", ctx.QueryParams(), &params.TextRecord)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter textRecord: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetDocument(ctx, id, params)
return err
}
// DownloadDocument converts echo context to params.
func (w *ServerInterfaceWrapper) DownloadDocument(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id DocumentID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.DownloadDocument(ctx, id)
return err
}
// GetDocumentLabels converts echo context to params.
func (w *ServerInterfaceWrapper) GetDocumentLabels(ctx echo.Context) error {
var err error
// ------------- Path parameter "documentId" -------------
var documentId openapi_types.UUID
err = runtime.BindStyledParameterWithOptions("simple", "documentId", ctx.Param("documentId"), &documentId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter documentId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetDocumentLabels(ctx, documentId)
return err
}
// ApplyLabel converts echo context to params.
func (w *ServerInterfaceWrapper) ApplyLabel(ctx echo.Context) error {
var err error
// ------------- Path parameter "documentId" -------------
var documentId openapi_types.UUID
err = runtime.BindStyledParameterWithOptions("simple", "documentId", ctx.Param("documentId"), &documentId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter documentId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.ApplyLabel(ctx, documentId)
return err
}
// GetCurrentEula converts echo context to params.
func (w *ServerInterfaceWrapper) GetCurrentEula(ctx echo.Context) error {
var err error
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetCurrentEula(ctx)
return err
}
// AgreeToEula converts echo context to params.
func (w *ServerInterfaceWrapper) AgreeToEula(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.AgreeToEula(ctx)
return err
}
// GetEulaStatus converts echo context to params.
func (w *ServerInterfaceWrapper) GetEulaStatus(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetEulaStatus(ctx)
return err
}
// ExportState converts echo context to params.
func (w *ServerInterfaceWrapper) ExportState(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id ExportID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.ExportState(ctx, id)
return err
}
// GetCurrentFieldExtraction converts echo context to params.
func (w *ServerInterfaceWrapper) GetCurrentFieldExtraction(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params GetCurrentFieldExtractionParams
// ------------- Required query parameter "documentId" -------------
err = runtime.BindQueryParameter("form", true, true, "documentId", ctx.QueryParams(), &params.DocumentId)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter documentId: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetCurrentFieldExtraction(ctx, params)
return err
}
// CreateFieldExtraction converts echo context to params.
func (w *ServerInterfaceWrapper) CreateFieldExtraction(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.CreateFieldExtraction(ctx)
return err
}
// GetFieldExtractionHistory converts echo context to params.
func (w *ServerInterfaceWrapper) GetFieldExtractionHistory(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params GetFieldExtractionHistoryParams
// ------------- Required query parameter "documentId" -------------
err = runtime.BindQueryParameter("form", true, true, "documentId", ctx.QueryParams(), &params.DocumentId)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter documentId: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetFieldExtractionHistory(ctx, params)
return err
}
// GetFieldExtractionByVersion converts echo context to params.
func (w *ServerInterfaceWrapper) GetFieldExtractionByVersion(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params GetFieldExtractionByVersionParams
// ------------- Required query parameter "documentId" -------------
err = runtime.BindQueryParameter("form", true, true, "documentId", ctx.QueryParams(), &params.DocumentId)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter documentId: %s", err))
}
// ------------- Required query parameter "version" -------------
err = runtime.BindQueryParameter("form", true, true, "version", ctx.QueryParams(), &params.Version)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter version: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetFieldExtractionByVersion(ctx, params)
return err
}
// CreateFolder converts echo context to params.
func (w *ServerInterfaceWrapper) CreateFolder(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.CreateFolder(ctx)
return err
}
// DeleteFolder converts echo context to params.
func (w *ServerInterfaceWrapper) DeleteFolder(ctx echo.Context) error {
var err error
// ------------- Path parameter "folderId" -------------
var folderId openapi_types.UUID
err = runtime.BindStyledParameterWithOptions("simple", "folderId", ctx.Param("folderId"), &folderId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter folderId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params DeleteFolderParams
// ------------- Optional query parameter "include_documents" -------------
err = runtime.BindQueryParameter("form", true, false, "include_documents", ctx.QueryParams(), &params.IncludeDocuments)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter include_documents: %s", err))
}
// ------------- Optional query parameter "verbose" -------------
err = runtime.BindQueryParameter("form", true, false, "verbose", ctx.QueryParams(), &params.Verbose)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter verbose: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.DeleteFolder(ctx, folderId, params)
return err
}
// RenameFolder converts echo context to params.
func (w *ServerInterfaceWrapper) RenameFolder(ctx echo.Context) error {
var err error
// ------------- Path parameter "folderId" -------------
var folderId openapi_types.UUID
err = runtime.BindStyledParameterWithOptions("simple", "folderId", ctx.Param("folderId"), &folderId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter folderId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.RenameFolder(ctx, folderId)
return err
}
// GetFolderDocuments converts echo context to params.
func (w *ServerInterfaceWrapper) GetFolderDocuments(ctx echo.Context) error {
var err error
// ------------- Path parameter "folderId" -------------
var folderId openapi_types.UUID
err = runtime.BindStyledParameterWithOptions("simple", "folderId", ctx.Param("folderId"), &folderId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter folderId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params GetFolderDocumentsParams
// ------------- Optional query parameter "textRecord" -------------
err = runtime.BindQueryParameter("form", true, false, "textRecord", ctx.QueryParams(), &params.TextRecord)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter textRecord: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetFolderDocuments(ctx, folderId, params)
return err
}
// GetFolderMetrics converts echo context to params.
func (w *ServerInterfaceWrapper) GetFolderMetrics(ctx echo.Context) error {
var err error
// ------------- Path parameter "folderId" -------------
var folderId openapi_types.UUID
err = runtime.BindStyledParameterWithOptions("simple", "folderId", ctx.Param("folderId"), &folderId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter folderId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetFolderMetrics(ctx, folderId)
return err
}
// GetHomePage converts echo context to params.
func (w *ServerInterfaceWrapper) GetHomePage(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetHomePage(ctx)
return err
}
// GetIdentity converts echo context to params.
func (w *ServerInterfaceWrapper) GetIdentity(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetIdentity(ctx)
return err
}
// GetDocumentsByLabel converts echo context to params.
func (w *ServerInterfaceWrapper) GetDocumentsByLabel(ctx echo.Context) error {
var err error
// ------------- Path parameter "labelName" -------------
var labelName string
err = runtime.BindStyledParameterWithOptions("simple", "labelName", ctx.Param("labelName"), &labelName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter labelName: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params GetDocumentsByLabelParams
// ------------- Required query parameter "clientId" -------------
err = runtime.BindQueryParameter("form", true, true, "clientId", ctx.QueryParams(), &params.ClientId)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter clientId: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetDocumentsByLabel(ctx, labelName, params)
return err
}
// Login converts echo context to params.
func (w *ServerInterfaceWrapper) Login(ctx echo.Context) error {
var err error
ctx.Set(CognitoAuthScopes, []string{"openid", "email", "profile"})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.Login(ctx)
return err
}
// LoginCallback converts echo context to params.
func (w *ServerInterfaceWrapper) LoginCallback(ctx echo.Context) error {
var err error
// Parameter object where we will unmarshal all parameters from the context
var params LoginCallbackParams
// ------------- Required query parameter "code" -------------
err = runtime.BindQueryParameter("form", true, true, "code", ctx.QueryParams(), &params.Code)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter code: %s", err))
}
// ------------- Required query parameter "state" -------------
err = runtime.BindQueryParameter("form", true, true, "state", ctx.QueryParams(), &params.State)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter state: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.LoginCallback(ctx, params)
return err
}
// Logout converts echo context to params.
func (w *ServerInterfaceWrapper) Logout(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.Logout(ctx)
return err
}
// ListBotSessionsAsSuperAdmin converts echo context to params.
func (w *ServerInterfaceWrapper) ListBotSessionsAsSuperAdmin(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params ListBotSessionsAsSuperAdminParams
// ------------- Required query parameter "clientId" -------------
err = runtime.BindQueryParameter("form", true, true, "clientId", ctx.QueryParams(), &params.ClientId)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter clientId: %s", err))
}
// ------------- Optional query parameter "limit" -------------
err = runtime.BindQueryParameter("form", true, false, "limit", ctx.QueryParams(), &params.Limit)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter limit: %s", err))
}
// ------------- Optional query parameter "offset" -------------
err = runtime.BindQueryParameter("form", true, false, "offset", ctx.QueryParams(), &params.Offset)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter offset: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.ListBotSessionsAsSuperAdmin(ctx, params)
return err
}
// DeleteBotSessionAsSuperAdmin converts echo context to params.
func (w *ServerInterfaceWrapper) DeleteBotSessionAsSuperAdmin(ctx echo.Context) error {
var err error
// ------------- Path parameter "sessionId" -------------
var sessionId BotSessionID
err = runtime.BindStyledParameterWithOptions("simple", "sessionId", ctx.Param("sessionId"), &sessionId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter sessionId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params DeleteBotSessionAsSuperAdminParams
// ------------- Required query parameter "clientId" -------------
err = runtime.BindQueryParameter("form", true, true, "clientId", ctx.QueryParams(), &params.ClientId)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter clientId: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.DeleteBotSessionAsSuperAdmin(ctx, sessionId, params)
return err
}
// GetBotSessionAsSuperAdmin converts echo context to params.
func (w *ServerInterfaceWrapper) GetBotSessionAsSuperAdmin(ctx echo.Context) error {
var err error
// ------------- Path parameter "sessionId" -------------
var sessionId BotSessionID
err = runtime.BindStyledParameterWithOptions("simple", "sessionId", ctx.Param("sessionId"), &sessionId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter sessionId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params GetBotSessionAsSuperAdminParams
// ------------- Required query parameter "clientId" -------------
err = runtime.BindQueryParameter("form", true, true, "clientId", ctx.QueryParams(), &params.ClientId)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter clientId: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetBotSessionAsSuperAdmin(ctx, sessionId, params)
return err
}
// ListCustomSchemas converts echo context to params.
func (w *ServerInterfaceWrapper) ListCustomSchemas(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params ListCustomSchemasParams
// ------------- Required query parameter "clientId" -------------
err = runtime.BindQueryParameter("form", true, true, "clientId", ctx.QueryParams(), &params.ClientId)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter clientId: %s", err))
}
// ------------- Optional query parameter "name" -------------
err = runtime.BindQueryParameter("form", true, false, "name", ctx.QueryParams(), &params.Name)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter name: %s", err))
}
// ------------- Optional query parameter "status" -------------
err = runtime.BindQueryParameter("form", true, false, "status", ctx.QueryParams(), &params.Status)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter status: %s", err))
}
// ------------- Optional query parameter "includeAllVersions" -------------
err = runtime.BindQueryParameter("form", true, false, "includeAllVersions", ctx.QueryParams(), &params.IncludeAllVersions)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter includeAllVersions: %s", err))
}
// ------------- Optional query parameter "limit" -------------
err = runtime.BindQueryParameter("form", true, false, "limit", ctx.QueryParams(), &params.Limit)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter limit: %s", err))
}
// ------------- Optional query parameter "offset" -------------
err = runtime.BindQueryParameter("form", true, false, "offset", ctx.QueryParams(), &params.Offset)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter offset: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.ListCustomSchemas(ctx, params)
return err
}
// CreateCustomSchema converts echo context to params.
func (w *ServerInterfaceWrapper) CreateCustomSchema(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.CreateCustomSchema(ctx)
return err
}
// DeleteCustomSchema converts echo context to params.
func (w *ServerInterfaceWrapper) DeleteCustomSchema(ctx echo.Context) error {
var err error
// ------------- Path parameter "schemaId" -------------
var schemaId openapi_types.UUID
err = runtime.BindStyledParameterWithOptions("simple", "schemaId", ctx.Param("schemaId"), &schemaId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter schemaId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.DeleteCustomSchema(ctx, schemaId)
return err
}
// GetCustomSchema converts echo context to params.
func (w *ServerInterfaceWrapper) GetCustomSchema(ctx echo.Context) error {
var err error
// ------------- Path parameter "schemaId" -------------
var schemaId openapi_types.UUID
err = runtime.BindStyledParameterWithOptions("simple", "schemaId", ctx.Param("schemaId"), &schemaId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter schemaId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetCustomSchema(ctx, schemaId)
return err
}
// CreateCustomSchemaVersion converts echo context to params.
func (w *ServerInterfaceWrapper) CreateCustomSchemaVersion(ctx echo.Context) error {
var err error
// ------------- Path parameter "schemaId" -------------
var schemaId openapi_types.UUID
err = runtime.BindStyledParameterWithOptions("simple", "schemaId", ctx.Param("schemaId"), &schemaId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter schemaId: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.CreateCustomSchemaVersion(ctx, schemaId)
return err
}
// ResetDocumentMetadata converts echo context to params.
func (w *ServerInterfaceWrapper) ResetDocumentMetadata(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id openapi_types.UUID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.ResetDocumentMetadata(ctx, id)
return err
}
// AssignDocumentSchema converts echo context to params.
func (w *ServerInterfaceWrapper) AssignDocumentSchema(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id openapi_types.UUID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.AssignDocumentSchema(ctx, id)
return err
}
// ListUISettings converts echo context to params.
func (w *ServerInterfaceWrapper) ListUISettings(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Parameter object where we will unmarshal all parameters from the context
var params ListUISettingsParams
// ------------- Optional query parameter "namespace" -------------
err = runtime.BindQueryParameter("form", true, false, "namespace", ctx.QueryParams(), &params.Namespace)
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter namespace: %s", err))
}
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.ListUISettings(ctx, params)
return err
}
// CreateUISetting converts echo context to params.
func (w *ServerInterfaceWrapper) CreateUISetting(ctx echo.Context) error {
var err error
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.CreateUISetting(ctx)
return err
}
// DeleteUISetting converts echo context to params.
func (w *ServerInterfaceWrapper) DeleteUISetting(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id UISettingID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.DeleteUISetting(ctx, id)
return err
}
// GetUISetting converts echo context to params.
func (w *ServerInterfaceWrapper) GetUISetting(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id UISettingID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.GetUISetting(ctx, id)
return err
}
// UpdateUISetting converts echo context to params.
func (w *ServerInterfaceWrapper) UpdateUISetting(ctx echo.Context) error {
var err error
// ------------- Path parameter "id" -------------
var id UISettingID
err = runtime.BindStyledParameterWithOptions("simple", "id", ctx.Param("id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
if err != nil {
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter id: %s", err))
}
ctx.Set(JwtAuthScopes, []string{})
// Invoke the callback with all the unmarshaled arguments
err = w.Handler.UpdateUISetting(ctx, id)
return err
}
// 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 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
}
// RegisterHandlers adds each server route to the EchoRouter.
func RegisterHandlers(router EchoRouter, si ServerInterface) {
RegisterHandlersWithBaseURL(router, si, "")
}
// Registers handlers, and prepends BaseURL to the paths, so that the paths
// can be served under a prefix.
func RegisterHandlersWithBaseURL(router EchoRouter, si ServerInterface, baseURL string) {
wrapper := ServerInterfaceWrapper{
Handler: si,
}
router.GET(baseURL+"/admin/eula", wrapper.ListEulaVersions)
router.POST(baseURL+"/admin/eula", wrapper.CreateEulaVersion)
router.GET(baseURL+"/admin/eula/agreements", wrapper.ListEulaAgreements)
router.GET(baseURL+"/admin/eula/compliance", wrapper.GetEulaCompliance)
router.GET(baseURL+"/admin/eula/:version_id", wrapper.GetEulaVersion)
router.PATCH(baseURL+"/admin/eula/:version_id", wrapper.UpdateEulaVersion)
router.POST(baseURL+"/admin/eula/:version_id/activate", wrapper.ActivateEulaVersion)
router.GET(baseURL+"/admin/users", wrapper.ListAdminUsers)
router.POST(baseURL+"/admin/users", wrapper.CreateAdminUser)
router.DELETE(baseURL+"/admin/users/:email", wrapper.DeleteAdminUser)
router.GET(baseURL+"/admin/users/:email", wrapper.GetAdminUser)
router.HEAD(baseURL+"/admin/users/:email", wrapper.CheckAdminUserExists)
router.PATCH(baseURL+"/admin/users/:email", wrapper.UpdateAdminUser)
router.POST(baseURL+"/admin/users/:email/disable", wrapper.DisableAdminUser)
router.POST(baseURL+"/admin/users/:email/enable", wrapper.EnableAdminUser)
router.POST(baseURL+"/client", wrapper.CreateClient)
router.GET(baseURL+"/client/:clientId/bot/sessions", wrapper.ListBotSessions)
router.POST(baseURL+"/client/:clientId/bot/sessions", wrapper.CreateBotSession)
router.GET(baseURL+"/client/:clientId/bot/sessions/:sessionId", wrapper.GetBotSession)
router.PATCH(baseURL+"/client/:clientId/bot/sessions/:sessionId/scope", wrapper.PatchBotSessionScope)
router.GET(baseURL+"/client/:clientId/bot/sessions/:sessionId/turns", wrapper.ListBotTurns)
router.POST(baseURL+"/client/:clientId/bot/sessions/:sessionId/turns", wrapper.CreateBotTurn)
router.GET(baseURL+"/client/:clientId/documents/:documentId/all-metadata", wrapper.GetDocumentAllMetadata)
router.GET(baseURL+"/client/:clientId/documents/:documentId/schema", wrapper.GetDocumentSchema)
router.DELETE(baseURL+"/client/:id", wrapper.DeleteClient)
router.GET(baseURL+"/client/:id", wrapper.GetClient)
router.PATCH(baseURL+"/client/:id", wrapper.UpdateClient)
router.GET(baseURL+"/client/:id/collector", wrapper.GetCollectorByClientId)
router.PATCH(baseURL+"/client/:id/collector", wrapper.SetCollectorByClientId)
router.GET(baseURL+"/client/:id/document", wrapper.ListDocumentsByClientId)
router.POST(baseURL+"/client/:id/document", wrapper.UploadDocument)
router.GET(baseURL+"/client/:id/document/batch", wrapper.ListDocumentBatches)
router.POST(baseURL+"/client/:id/document/batch", wrapper.UploadDocumentBatch)
router.GET(baseURL+"/client/:id/document/batch/:batch_id", wrapper.GetDocumentBatch)
router.POST(baseURL+"/client/:id/export", wrapper.TriggerExport)
router.GET(baseURL+"/client/:id/folders", wrapper.ListClientFolders)
router.GET(baseURL+"/client/:id/status", wrapper.GetStatusByClientId)
router.GET(baseURL+"/clients", wrapper.ListClients)
router.GET(baseURL+"/custom-metadata", wrapper.GetCurrentCustomMetadata)
router.POST(baseURL+"/custom-metadata", wrapper.SetCustomMetadata)
router.GET(baseURL+"/custom-metadata/history", wrapper.GetCustomMetadataHistory)
router.GET(baseURL+"/custom-metadata/version", wrapper.GetCustomMetadataByVersion)
router.DELETE(baseURL+"/document/:id", wrapper.DeleteDocument)
router.GET(baseURL+"/document/:id", wrapper.GetDocument)
router.GET(baseURL+"/document/:id/download", wrapper.DownloadDocument)
router.GET(baseURL+"/documents/:documentId/labels", wrapper.GetDocumentLabels)
router.POST(baseURL+"/documents/:documentId/labels", wrapper.ApplyLabel)
router.GET(baseURL+"/eula", wrapper.GetCurrentEula)
router.POST(baseURL+"/eula/agree", wrapper.AgreeToEula)
router.GET(baseURL+"/eula/status", wrapper.GetEulaStatus)
router.GET(baseURL+"/export/:id", wrapper.ExportState)
router.GET(baseURL+"/field-extractions", wrapper.GetCurrentFieldExtraction)
router.POST(baseURL+"/field-extractions", wrapper.CreateFieldExtraction)
router.GET(baseURL+"/field-extractions/history", wrapper.GetFieldExtractionHistory)
router.GET(baseURL+"/field-extractions/version", wrapper.GetFieldExtractionByVersion)
router.POST(baseURL+"/folders", wrapper.CreateFolder)
router.DELETE(baseURL+"/folders/:folderId", wrapper.DeleteFolder)
router.PATCH(baseURL+"/folders/:folderId", wrapper.RenameFolder)
router.GET(baseURL+"/folders/:folderId/documents", wrapper.GetFolderDocuments)
router.GET(baseURL+"/folders/:folderId/metrics", wrapper.GetFolderMetrics)
router.GET(baseURL+"/home", wrapper.GetHomePage)
router.GET(baseURL+"/identity", wrapper.GetIdentity)
router.GET(baseURL+"/labels/:labelName/documents", wrapper.GetDocumentsByLabel)
router.GET(baseURL+"/login", wrapper.Login)
router.GET(baseURL+"/login-callback", wrapper.LoginCallback)
router.GET(baseURL+"/logout", wrapper.Logout)
router.GET(baseURL+"/super-admin/bot/sessions", wrapper.ListBotSessionsAsSuperAdmin)
router.DELETE(baseURL+"/super-admin/bot/sessions/:sessionId", wrapper.DeleteBotSessionAsSuperAdmin)
router.GET(baseURL+"/super-admin/bot/sessions/:sessionId", wrapper.GetBotSessionAsSuperAdmin)
router.GET(baseURL+"/super-admin/custom-schemas", wrapper.ListCustomSchemas)
router.POST(baseURL+"/super-admin/custom-schemas", wrapper.CreateCustomSchema)
router.DELETE(baseURL+"/super-admin/custom-schemas/:schemaId", wrapper.DeleteCustomSchema)
router.GET(baseURL+"/super-admin/custom-schemas/:schemaId", wrapper.GetCustomSchema)
router.POST(baseURL+"/super-admin/custom-schemas/:schemaId/versions", wrapper.CreateCustomSchemaVersion)
router.POST(baseURL+"/super-admin/documents/:id/reset-metadata", wrapper.ResetDocumentMetadata)
router.PATCH(baseURL+"/super-admin/documents/:id/schema", wrapper.AssignDocumentSchema)
router.GET(baseURL+"/ui-settings", wrapper.ListUISettings)
router.POST(baseURL+"/ui-settings", wrapper.CreateUISetting)
router.DELETE(baseURL+"/ui-settings/:id", wrapper.DeleteUISetting)
router.GET(baseURL+"/ui-settings/:id", wrapper.GetUISetting)
router.PATCH(baseURL+"/ui-settings/:id", wrapper.UpdateUISetting)
}
// Base64 encoded, gzipped, json marshaled Swagger object
var swaggerSpec = []string{
"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",
"4r39fvdPAAAA//94J1oWMqcCAA==",
}
// GetSwagger returns the content of the embedded swagger specification file
// or error if failed to decode
func decodeSpec() ([]byte, error) {
zipped, err := base64.StdEncoding.DecodeString(strings.Join(swaggerSpec, ""))
if err != nil {
return nil, fmt.Errorf("error base64 decoding spec: %w", err)
}
zr, err := gzip.NewReader(bytes.NewReader(zipped))
if err != nil {
return nil, fmt.Errorf("error decompressing spec: %w", err)
}
var buf bytes.Buffer
_, err = buf.ReadFrom(zr)
if err != nil {
return nil, fmt.Errorf("error decompressing spec: %w", err)
}
return buf.Bytes(), nil
}
var rawSpec = decodeSpecCached()
// a naive cached of a decoded swagger spec
func decodeSpecCached() func() ([]byte, error) {
data, err := decodeSpec()
return func() ([]byte, error) {
return data, err
}
}
// Constructs a synthetic filesystem for resolving external references when loading openapi specifications.
func PathToRawSpec(pathToFile string) map[string]func() ([]byte, error) {
res := make(map[string]func() ([]byte, error))
if len(pathToFile) > 0 {
res[pathToFile] = rawSpec
}
return res
}
// 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 GetSwagger() (swagger *openapi3.T, err error) {
resolvePath := PathToRawSpec("")
loader := openapi3.NewLoader()
loader.IsExternalRefsAllowed = true
loader.ReadFromURIFunc = func(loader *openapi3.Loader, url *url.URL) ([]byte, error) {
pathToFile := url.String()
pathToFile = path.Clean(pathToFile)
getSpec, ok := resolvePath[pathToFile]
if !ok {
err1 := fmt.Errorf("path not found: %s", pathToFile)
return nil, err1
}
return getSpec()
}
var specData []byte
specData, err = rawSpec()
if err != nil {
return
}
swagger, err = loader.LoadFromData(specData)
if err != nil {
return
}
return
}