=== SCHEMA: Activity === Required: [] - id: integer,string (format: int64) - projectId: null,integer,string (format: int64) - milestoneId: null,integer,string (format: int64) - createdBy: string (format: uuid) - updatedBy: null,string (format: uuid) - approvedBy: null,string (format: uuid) - createdAt: string (format: date-time) - updatedAt: null,string (format: date-time) - category: null,string (format: none) - status: #/components/schemas/ApprovalStatus (format: none) - amount: number,string (format: double) - title: null,string (format: none) - description: null,string (format: none) - performedAt: null,string (format: date-time) === SCHEMA: ActivityStatus === Other: { type: 'integer' } === SCHEMA: ApprovalStatus === Other: { type: 'integer' } === SCHEMA: Award === Required: [] - id: integer,string (format: int64) - organisationId: integer,string (format: int64) - programmeId: integer,string (format: int64) - projectId: null,integer,string (format: int64) - createdBy: string (format: uuid) - updatedBy: null,string (format: uuid) - approvedBy: null,string (format: uuid) - createdAt: string (format: date-time) - updatedAt: null,string (format: date-time) - status: #/components/schemas/ApprovalStatus (format: none) - amount: number,string (format: double) === SCHEMA: Budget === Required: [] - id: integer,string (format: int64) - projectId: integer,string (format: int64) - createdBy: string (format: uuid) - approvedBy: null,string (format: uuid) - createdAt: string (format: date-time) - updatedAt: null,string (format: date-time) - name: null,string (format: none) - amount: number,string (format: double) === SCHEMA: Contract === Required: [] - id: integer,string (format: int64) - awardId: integer,string (format: int64) - externalSignatureId: null,string (format: none) - signedDocumentUrl: null,string (format: none) - effectiveAt: null,string (format: date-time) - expiresAt: null,string (format: date-time) - totalValue: number,string (format: double) - status: #/components/schemas/ContractStatus (format: none) - createdBy: string (format: uuid) - createdAt: string (format: date-time) === SCHEMA: ContractStatus === Other: { type: 'integer' } === SCHEMA: CreateActivityRequest === Required: [ 'projectId', 'milestoneId', 'category', 'amount', 'title', 'description', 'performedAt' ] - projectId: integer,string (format: int64) - milestoneId: null,integer,string (format: int64) - category: string (format: none) - amount: number,string (format: double) - title: string (format: none) - description: string (format: none) - performedAt: null,string (format: date-time) === SCHEMA: CreateAwardRequest === Required: [ 'organisationId', 'programmeId', 'amount' ] - organisationId: integer,string (format: int64) - programmeId: integer,string (format: int64) - amount: number,string (format: double) === SCHEMA: CreateBudgetRequest === Required: [ 'projectId', 'name', 'amount' ] - projectId: integer,string (format: int64) - name: string (format: none) - amount: number,string (format: double) === SCHEMA: CreateContractRequest === Required: [ 'awardId', 'totalValue', 'effectiveAt', 'expiresAt' ] - awardId: integer,string (format: int64) - totalValue: number,string (format: double) - effectiveAt: string (format: date-time) - expiresAt: string (format: date-time) === SCHEMA: CreateDisbursementRequest === Required: [ 'projectId', 'milestoneId', 'amount' ] - projectId: integer,string (format: int64) - milestoneId: null,integer,string (format: int64) - amount: number,string (format: double) === SCHEMA: CreateIndicatorRequest === Required: [ 'projectId', 'name', 'unitOfMeasure', 'baselineAmount', 'targetAmount' ] - projectId: integer,string (format: int64) - name: string (format: none) - unitOfMeasure: #/components/schemas/UnitOfMeasure (format: none) - baselineAmount: number,string (format: double) - targetAmount: number,string (format: double) === SCHEMA: CreateMilestoneRequest === Required: [ 'projectId', 'dueAt', 'name', 'priority' ] - projectId: integer,string (format: int64) - dueAt: string (format: date-time) - name: string (format: none) - priority: #/components/schemas/Priority (format: none) === SCHEMA: CreateOrganisationRequest === Required: [ 'name', 'registrationNo', 'email' ] - name: string (format: none) - registrationNo: string (format: none) - email: string (format: none) - type: #/components/schemas/OrganisationType (format: none) === SCHEMA: CreatePortfolioRequest === Required: [ 'name', 'description', 'organisationId', 'ownerId' ] - name: string (format: none) - description: string (format: none) - organisationId: integer,string (format: int64) - ownerId: string (format: uuid) === SCHEMA: CreateProgrammeRequest === Required: [ 'portfolioId', 'name', 'ownerId' ] - portfolioId: integer,string (format: int64) - name: string (format: none) - ownerId: string (format: uuid) === SCHEMA: CreateProjectRequest === Required: [ 'programmeId', 'name', 'description', 'sector', 'projectType' ] - programmeId: integer,string (format: int64) - name: string (format: none) - description: string (format: none) - sector: #/components/schemas/IndustrySector (format: none) - projectType: #/components/schemas/ProjectType (format: none) === SCHEMA: CreateRiskRequest === Required: [ 'projectId', 'likelihood', 'impact', 'name', 'description' ] - projectId: integer,string (format: int64) - likelihood: #/components/schemas/RiskLikelihood (format: none) - impact: #/components/schemas/RiskImpact (format: none) - name: string (format: none) - description: string (format: none) === SCHEMA: Dashboard === Required: [ 'portfolioValue', 'activeAwards', 'disbursed', 'onTrackPercentage', 'atRiskCount', 'beneficiariesReached' ] - portfolioValue: number,string (format: double) - activeAwards: integer,string (format: int32) - disbursed: number,string (format: double) - onTrackPercentage: number,string (format: double) - atRiskCount: integer,string (format: int32) - beneficiariesReached: integer,string (format: int32) === SCHEMA: Disbursement === Required: [] - id: integer,string (format: int64) - projectId: integer,string (format: int64) - milestoneId: null,integer,string (format: int64) - createdBy: string (format: uuid) - updatedBy: null,string (format: uuid) - createdAt: string (format: date-time) - updatedAt: null,string (format: date-time) - amount: number,string (format: double) - status: #/components/schemas/ApprovalStatus (format: none) === SCHEMA: Evidence === Required: [] - id: integer,string (format: int64) - projectId: integer,string (format: int64) - milestoneId: integer,string (format: int64) - indicatorId: integer,string (format: int64) - activityId: integer,string (format: int64) - createdBy: string (format: uuid) - updatedBy: null,string (format: uuid) - createdAt: string (format: date-time) - updatedAt: null,string (format: date-time) - version: integer,string (format: int32) - type: #/components/schemas/EvidenceType (format: none) - documentUrl: null,string (format: none) - status: #/components/schemas/ApprovalStatus (format: none) === SCHEMA: EvidenceType === Other: { type: 'integer' } === SCHEMA: ExecuteContractRequest === Required: [ 'contractId', 'externalSignatureId', 'signedDocumentUrl' ] - contractId: integer,string (format: int64) - externalSignatureId: string (format: none) - signedDocumentUrl: string (format: none) === SCHEMA: Indicator === Required: [] - id: integer,string (format: int64) - projectId: integer,string (format: int64) - createdBy: string (format: uuid) - createdAt: string (format: date-time) - name: null,string (format: none) - unitOfMeasure: any (format: none) - baselineAmount: number,string (format: double) - targetAmount: number,string (format: double) - actualAmount: number,string (format: double) === SCHEMA: IndustrySector === Other: { type: 'integer' } === SCHEMA: Instrument === Required: [] - id: integer,string (format: int64) - programmeId: integer,string (format: int64) - code: null,string (format: none) - name: null,string (format: none) - description: null,string (format: none) - status: #/components/schemas/ActivityStatus (format: none) - createdBy: string (format: uuid) - createdAt: string (format: date-time) === SCHEMA: Invite === Required: [] - id: integer,string (format: int64) - organisationId: integer,string (format: int64) - invitedOrganisationId: integer,string (format: int64) - awardId: integer,string (format: int64) - contractId: integer,string (format: int64) - recipient: string (format: uuid) - createdBy: string (format: uuid) - updatedBy: null,string (format: uuid) - createdAt: string (format: date-time) - updatedAt: null,string (format: date-time) === SCHEMA: InviteRequest === Required: [ 'organisationId', 'invitedOrganisationId', 'awardId', 'contractId', 'recipient', 'message', 'platform' ] - organisationId: integer,string (format: int64) - invitedOrganisationId: integer,string (format: int64) - awardId: integer,string (format: int64) - contractId: integer,string (format: int64) - recipient: string (format: uuid) - message: string (format: none) - platform: #/components/schemas/NotificationPlatform (format: none) === SCHEMA: Milestone === Required: [] - id: integer,string (format: int64) - projectId: integer,string (format: int64) - createdBy: string (format: uuid) - updatedBy: null,string (format: uuid) - createdAt: string (format: date-time) - updatedAt: null,string (format: date-time) - dueAt: string (format: date-time) - name: null,string (format: none) - status: #/components/schemas/ApprovalStatus (format: none) - priority: #/components/schemas/Priority (format: none) === SCHEMA: NotificationPlatform === Other: { type: 'integer' } === SCHEMA: Organisation === Required: [] - id: integer,string (format: int64) - createdBy: string (format: uuid) - createdAt: string (format: date-time) - registrationNo: null,string (format: none) - name: null,string (format: none) - email: null,string (format: none) - type: #/components/schemas/OrganisationType (format: none) - status: #/components/schemas/ActivityStatus (format: none) === SCHEMA: OrganisationType === Other: { type: 'integer', default: 5 } === SCHEMA: Portfolio === Required: [] - id: integer,string (format: int64) - organisationId: integer,string (format: int64) - ownedBy: string (format: uuid) - createdBy: string (format: uuid) - createdAt: string (format: date-time) - name: null,string (format: none) - description: null,string (format: none) === SCHEMA: Priority === Other: { type: 'integer' } === SCHEMA: ProblemDetails === Required: [] - type: null,string (format: none) - title: null,string (format: none) - status: null,integer,string (format: int32) - detail: null,string (format: none) - instance: null,string (format: none) === SCHEMA: Programme === Required: [] - id: integer,string (format: int64) - portfolioId: integer,string (format: int64) - ownedBy: string (format: uuid) - createdBy: string (format: uuid) - updatedBy: null,string (format: uuid) - createdAt: string (format: date-time) - updatedAt: null,string (format: date-time) - name: null,string (format: none) - status: #/components/schemas/ApprovalStatus (format: none) === SCHEMA: Project === Required: [] - id: integer,string (format: int64) - programmeId: integer,string (format: int64) - createdBy: string (format: uuid) - updatedBy: null,string (format: uuid) - createdAt: string (format: date-time) - updatedAt: null,string (format: date-time) - startedAt: null,string (format: date-time) - endedAt: null,string (format: date-time) - sector: #/components/schemas/IndustrySector (format: none) - projectType: #/components/schemas/ProjectType (format: none) - name: null,string (format: none) - description: null,string (format: none) - status: #/components/schemas/ApprovalStatus (format: none) === SCHEMA: ProjectType === Other: { type: 'integer' } === SCHEMA: Risk === Required: [] - id: integer,string (format: int64) - projectId: integer,string (format: int64) - createdBy: string (format: uuid) - createdAt: string (format: date-time) - likelihood: #/components/schemas/RiskLikelihood (format: none) - impact: #/components/schemas/RiskImpact (format: none) - name: null,string (format: none) - description: null,string (format: none) === SCHEMA: RiskImpact === Other: { type: 'integer' } === SCHEMA: RiskLikelihood === Other: { type: 'integer' } === SCHEMA: UnitOfMeasure === Other: { type: 'integer' } === SCHEMA: UpdateContractRequest === Required: [ 'contractId', 'status' ] - contractId: integer,string (format: int64) - status: #/components/schemas/ContractStatus (format: none) === SCHEMA: UpdateDisbursementRequest === Required: [ 'disbursementId', 'milestoneId', 'amount' ] - disbursementId: integer,string (format: int64) - milestoneId: null,integer,string (format: int64) - amount: number,string (format: double) === SCHEMA: UpdateEvidenceRequest === Required: [ 'evidenceId', 'version', 'evidenceType', 'status' ] - evidenceId: integer,string (format: int64) - version: integer,string (format: int32) - evidenceType: #/components/schemas/EvidenceType (format: none) - status: #/components/schemas/ApprovalStatus (format: none) === SCHEMA: UpdateMilestoneRequest === Required: [ 'milestoneId', 'dueAt', 'name', 'priority', 'status' ] - milestoneId: integer,string (format: int64) - dueAt: string (format: date-time) - name: string (format: none) - priority: #/components/schemas/Priority (format: none) - status: #/components/schemas/ApprovalStatus (format: none) === SCHEMA: UpdateOrganisationRequest === Required: [ 'organisationId', 'name', 'registrationNo', 'email', 'type' ] - organisationId: integer,string (format: int64) - name: string (format: none) - registrationNo: string (format: none) - email: string (format: none) - type: #/components/schemas/OrganisationType (format: none) === SCHEMA: UpdatePortfolioRequest === Required: [ 'portfolioId', 'name', 'description', 'ownerId' ] - portfolioId: integer,string (format: int64) - name: string (format: none) - description: string (format: none) - ownerId: string (format: uuid) === SCHEMA: UpdateProgrammeRequest === Required: [ 'programmeId', 'name', 'ownerId', 'status' ] - programmeId: integer,string (format: int64) - name: string (format: none) - ownerId: string (format: uuid) - status: #/components/schemas/ApprovalStatus (format: none) === SCHEMA: UpdateProjectRequest === Required: [ 'projectId', 'name', 'description', 'startedAt', 'endedAt', 'sector', 'projectType' ] - projectId: integer,string (format: int64) - name: string (format: none) - description: string (format: none) - startedAt: null,string (format: date-time) - endedAt: null,string (format: date-time) - sector: #/components/schemas/IndustrySector (format: none) - projectType: #/components/schemas/ProjectType (format: none) === SCHEMA: UpdateProjectStatusRequest === Required: [ 'projectId', 'status' ] - projectId: integer,string (format: int64) - status: #/components/schemas/ApprovalStatus (format: none) === SCHEMA: UpdateRiskRequest === Required: [ 'riskId', 'likelihood', 'impact', 'name', 'description' ] - riskId: integer,string (format: int64) - likelihood: #/components/schemas/RiskLikelihood (format: none) - impact: #/components/schemas/RiskImpact (format: none) - name: string (format: none) - description: string (format: none) === SCHEMA: User === Required: [] - id: string (format: uuid) - lastLoginAt: null,string (format: date-time) - email: null,string (format: none) - status: #/components/schemas/ActivityStatus (format: none) === SCHEMA: UserFilterRequest === Required: [] - status: any (format: none) - email: null,string (format: none) - sortBy: null,string (format: none) - sortDescending: boolean (format: none)