Files

9545 lines
230 KiB
JSON

{
"openapi": "3.1.1",
"info": {
"title": "PostFundManagement.Api | v1",
"version": "1.0.0"
},
"servers": [
{
"url": "http://api.ifri.khongisa.co.za/"
}
],
"paths": {
"/v1/api/users/{userId}": {
"get": {
"tags": [
"Users"
],
"description": "Gets the metadata of a single user.",
"operationId": "getuser",
"parameters": [
{
"name": "userId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/User"
}
}
}
},
"404": {
"description": "Not Found"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/users/{page}/{pageSize}": {
"post": {
"tags": [
"Users"
],
"description": "Paginated, searchable directory of system users. Supports filtering by ActivityStatus, searching by Email, and sorting",
"operationId": "getusers",
"parameters": [
{
"name": "page",
"in": "path",
"required": true,
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": "integer",
"format": "int32",
"default": 1
}
},
{
"name": "pageSize",
"in": "path",
"required": true,
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": "integer",
"format": "int32",
"default": 100
}
}
],
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UserFilterRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/User"
}
}
}
}
},
"404": {
"description": "Not Found"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/integration/sync": {
"post": {
"tags": [
"Users"
],
"description": "Trigger integration and data synchronization in the background",
"operationId": "syncuser",
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/users/{userId}/status/{status}": {
"get": {
"tags": [
"Users"
],
"description": "Changes the Activity status of the user in the system",
"operationId": "updateuserstatus",
"parameters": [
{
"name": "userId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
},
{
"name": "status",
"in": "path",
"required": true,
"schema": {
"$ref": "#/components/schemas/ActivityStatus"
}
}
],
"responses": {
"200": {
"description": "OK"
},
"404": {
"description": "Not Found"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/activities": {
"post": {
"tags": [
"Projects"
],
"description": "Add a new activity under project (M04)",
"operationId": "createactivity",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateActivityRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
}
},
"/v1/api/projects/beneficiaries": {
"post": {
"tags": [
"Projects"
],
"description": "Add a new project beneficiary",
"operationId": "createbeneficiary",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateBeneficiaryRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
},
"put": {
"tags": [
"Projects"
],
"description": "Update project beneficiary",
"operationId": "updatebeneficiary",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateBeneficiaryRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/changerequests": {
"post": {
"tags": [
"Projects"
],
"description": "Create a new change request against an existing project",
"operationId": "createchangerequest",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateChangeRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
},
"put": {
"tags": [
"Projects"
],
"description": "Update a specific project change request",
"operationId": "updatechangerequest",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateChangeRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/complianceitems": {
"post": {
"tags": [
"Projects"
],
"description": "Add a new beneficiary compliance item",
"operationId": "createcomplianceitem",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateComplianceItemRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
},
"put": {
"tags": [
"Projects"
],
"description": "Update a specific compliance item",
"operationId": "updatecomplianceitem",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateComplianceItemRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/issues": {
"post": {
"tags": [
"Projects"
],
"description": "Add a new project issue",
"operationId": "createissue",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateIssueRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
},
"put": {
"tags": [
"Projects"
],
"description": "Update a specific project issue",
"operationId": "updateissue",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateIssueRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/beneficiaris/outcomes": {
"post": {
"tags": [
"Projects"
],
"description": "Add a new beneficiary outcome",
"operationId": "createoutcome",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateOutcomeRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
}
},
"/v1/api/projects/programme": {
"post": {
"tags": [
"Projects"
],
"description": "Create programme",
"operationId": "createprogramme",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateProgrammeRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
},
"put": {
"tags": [
"Projects"
],
"description": "Update existing programme",
"operationId": "updateprogramme",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateProgrammeRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects": {
"post": {
"tags": [
"Projects"
],
"description": "Create a new project (M04)",
"operationId": "createproject",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateProjectRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"404": {
"description": "Not Found"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
},
"get": {
"tags": [
"Projects"
],
"description": "Get a list of projects",
"operationId": "getprojects",
"parameters": [
{
"name": "page",
"in": "query",
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32",
"default": 1
}
},
{
"name": "pageSize",
"in": "query",
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32",
"default": 100
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Project"
}
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
},
"put": {
"tags": [
"Projects"
],
"description": "Update project details",
"operationId": "updateproject",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateProjectRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
}
},
"/v1/api/projects/sitevisits": {
"post": {
"tags": [
"Projects"
],
"description": "Add a new project site visit",
"operationId": "createsitevisit",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateSiteVisitRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
},
"put": {
"tags": [
"Projects"
],
"description": "Update project site visit",
"operationId": "updatesitevisit",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateSiteVisitRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/{projectId}/activities": {
"get": {
"tags": [
"Projects"
],
"description": "Get a list of activities for a project",
"operationId": "getactivities",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Activity"
}
}
}
}
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/activities/{activityId}": {
"get": {
"tags": [
"Projects"
],
"description": "Gets a specific activity by it's id",
"operationId": "getactivity",
"parameters": [
{
"name": "activityId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Activity"
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/{projectId}/beneficiaries": {
"get": {
"tags": [
"Projects"
],
"description": "Gets project beneficiaries",
"operationId": "getbeneficiariesretrieval",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Beneficiary"
}
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/beneficiaries/{beneficiaryId}": {
"get": {
"tags": [
"Projects"
],
"description": "Gets project beneficiaries",
"operationId": "getbeneficiaries",
"parameters": [
{
"name": "beneficiaryId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Beneficiary"
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/changerequests/{changeRequestId}": {
"get": {
"tags": [
"Projects"
],
"description": "Gets a specific project change request",
"operationId": "getchangerequest",
"parameters": [
{
"name": "changeRequestId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ChangeRequest"
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/{projectId}/changerequests": {
"get": {
"tags": [
"Projects"
],
"description": "Gets project change requests",
"operationId": "getchangerequests",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ChangeRequest"
}
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/complianceitems/{complianceItemId}": {
"get": {
"tags": [
"Projects"
],
"description": "Gets a specific project compliance item",
"operationId": "getcomplianceitem",
"parameters": [
{
"name": "complianceItemId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ComplianceItem"
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/complianceitems/{projectId}": {
"get": {
"tags": [
"Projects"
],
"description": "Gets project compliance items",
"operationId": "getcomplianceitems",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ComplianceItem"
}
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/issues/{issueId}": {
"get": {
"tags": [
"Projects"
],
"description": "Gets a specific project issue",
"operationId": "getissue",
"parameters": [
{
"name": "issueId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Issue"
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/{projectId}/issues": {
"get": {
"tags": [
"Projects"
],
"description": "Gets project issues",
"operationId": "getissues",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Issue"
}
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/milestones/{milestoneId}": {
"get": {
"tags": [
"Projects"
],
"description": "Gets a specific milestone",
"operationId": "getmilestone",
"parameters": [
{
"name": "milestoneId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Milestone"
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/milestones/{page}/{pageSize}": {
"get": {
"tags": [
"Projects"
],
"description": "Get a list of all milestones",
"operationId": "getmilestones",
"parameters": [
{
"name": "page",
"in": "path",
"required": true,
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": "integer",
"format": "int32",
"default": 1
}
},
{
"name": "pageSize",
"in": "path",
"required": true,
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": "integer",
"format": "int32",
"default": 100
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Milestone"
}
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
}
},
"/v1/api/projects/outcomes/{outcomeId}": {
"get": {
"tags": [
"Projects"
],
"description": "Gets a specific project outcome",
"operationId": "getoutcome",
"parameters": [
{
"name": "outcomeId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Outcome"
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/outcomes/{beneficiatyId}": {
"get": {
"tags": [
"Projects"
],
"description": "Gets project beneficiary outcomes",
"operationId": "getoutcomes",
"parameters": [
{
"name": "beneficiatyId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Outcome"
}
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/programme/{programmeId}": {
"get": {
"tags": [
"Projects"
],
"description": "Get specific programme",
"operationId": "getprogramme",
"parameters": [
{
"name": "programmeId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Programme"
}
}
}
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/{programmeId}/programme": {
"get": {
"tags": [
"Projects"
],
"description": "Get a list of all projects under a programme",
"operationId": "getprogrammeprojects",
"parameters": [
{
"name": "programmeId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Project"
}
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/programme/{page}/{pageSize}": {
"get": {
"tags": [
"Projects"
],
"description": "Get a list of all programmes",
"operationId": "getprogrammesprojects",
"parameters": [
{
"name": "page",
"in": "path",
"required": true,
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": "integer",
"format": "int32",
"default": 1
}
},
{
"name": "pageSize",
"in": "path",
"required": true,
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": "integer",
"format": "int32",
"default": 100
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Programme"
}
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/{projectId}": {
"get": {
"tags": [
"Projects"
],
"description": "Get project by ID",
"operationId": "getproject",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Project"
}
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/indicators/project/{projectId}": {
"get": {
"tags": [
"Projects"
],
"description": "Get get a detailed list of project indicators",
"operationId": "getprojectindicators",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Indicator"
}
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/{projectId}/milestones": {
"get": {
"tags": [
"Projects"
],
"description": "Get a list of milestones for a project",
"operationId": "getprojectmilestones",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Milestone"
}
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/{projectId}/risks": {
"get": {
"tags": [
"Projects"
],
"description": "Get a list of risks for a project",
"operationId": "getprojectrisks",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Risk"
}
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/sitevisits/{siteVisitId}": {
"get": {
"tags": [
"Projects"
],
"description": "Gets project site visit",
"operationId": "getsitevisit",
"parameters": [
{
"name": "siteVisitId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/SiteVisit"
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/{projectId}/sitevisits": {
"get": {
"tags": [
"Projects"
],
"description": "Gets project site visits",
"operationId": "getsitevisits",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SiteVisit"
}
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/milestone": {
"put": {
"tags": [
"Projects"
],
"description": "Update project milestone details",
"operationId": "updatemilestone",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateMilestoneRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
}
},
"/v1/api/projects/outcomes": {
"put": {
"tags": [
"Projects"
],
"description": "Update project beneficiary outcome",
"operationId": "updateoutcome",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateOutcomeRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/projects/status": {
"put": {
"tags": [
"Projects"
],
"description": "Update project status (M04)",
"operationId": "updateprojectstatus",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateProjectStatusRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/grants/awards": {
"post": {
"tags": [
"Grants"
],
"description": "Register an approved funding award (M01)",
"operationId": "createaward",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateAwardRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not Found"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
},
"get": {
"tags": [
"Grants"
],
"description": "Get a list of awards",
"operationId": "getawards",
"parameters": [
{
"name": "page",
"in": "query",
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32",
"default": 1
}
},
{
"name": "pageSize",
"in": "query",
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32",
"default": 10
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Award"
}
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
}
},
"/v1/api/grants/budgets": {
"post": {
"tags": [
"Grants"
],
"description": "Create a new budget line (M05)",
"operationId": "createbudget",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateBudgetRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"404": {
"description": "Not Found"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
},
"get": {
"tags": [
"Grants"
],
"description": "Get all budgets",
"operationId": "getbudgets",
"parameters": [
{
"name": "page",
"in": "query",
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32",
"default": 1
}
},
{
"name": "pageSize",
"in": "query",
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32",
"default": 100
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Budget"
}
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
},
"put": {
"tags": [
"Governance"
],
"description": "Updates a specific budget",
"operationId": "updatebudget",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateBudgetRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/grants/contracts": {
"post": {
"tags": [
"Grants"
],
"description": "Create a contract record from an approved award (M02)",
"operationId": "createcontract",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateContractRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
},
"get": {
"tags": [
"Grants"
],
"description": "Get all contracts",
"operationId": "getcontracts",
"parameters": [
{
"name": "page",
"in": "query",
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32",
"default": 1
}
},
{
"name": "pageSize",
"in": "query",
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32",
"default": 100
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Contract"
}
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
},
"put": {
"tags": [
"Grants"
],
"description": "Updates a specific contract",
"operationId": "updatecontract",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateContractRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not Found"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/grants/contracts/execute": {
"post": {
"tags": [
"Grants"
],
"description": "Execute the contract and lock the contractual version",
"operationId": "executecontract",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ExecuteContractRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
}
},
"/v1/api/grants/awards/{awardId}": {
"get": {
"tags": [
"Grants"
],
"description": "Get award by ID",
"operationId": "getaward",
"parameters": [
{
"name": "awardId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Award"
}
}
}
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not Found"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/grants/budgets/{budgetId}": {
"get": {
"tags": [
"Grants"
],
"description": "Get budget by ID",
"operationId": "getbudget",
"parameters": [
{
"name": "budgetId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Budget"
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/grants/contracts/{contractId}": {
"get": {
"tags": [
"Grants"
],
"description": "Get contract by ID",
"operationId": "getcontract",
"parameters": [
{
"name": "contractId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Contract"
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
},
"post": {
"tags": [
"Grants"
],
"description": "Uploads a contract file securely",
"operationId": "uploadcontract",
"parameters": [
{
"name": "contractId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not Found"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/grants/contracts/{contractId}/securelink": {
"get": {
"tags": [
"Grants"
],
"description": "Gets a secure download URL, has expiry period (default 15min)",
"operationId": "getcontracturl",
"parameters": [
{
"name": "contractId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "string"
}
}
}
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not Found"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/governance/instruments": {
"post": {
"tags": [
"Governance"
],
"description": "Creates a new programme funding instrument",
"operationId": "createinstrument",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateInstrumentRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
},
"put": {
"tags": [
"Governance"
],
"description": "Updates a programme funding instrument",
"operationId": "updateinstrument",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateInstrumentRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/governance/organisations": {
"post": {
"tags": [
"Governance"
],
"description": "Create a new organization profile",
"operationId": "createorganisation",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateOrganisationRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
},
"get": {
"tags": [
"Governance"
],
"description": "Get a paginated directory of organizations",
"operationId": "getorganisations",
"parameters": [
{
"name": "page",
"in": "query",
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32",
"default": 1
}
},
{
"name": "pageSize",
"in": "query",
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32",
"default": 100
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Organisation"
}
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
},
"put": {
"tags": [
"Governance"
],
"description": "Update an existing organization profile",
"operationId": "updateorganisation",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateOrganisationRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/governance/organisations/portfolio": {
"post": {
"tags": [
"Governance"
],
"description": "Create a new organization portfolio",
"operationId": "createportfolio",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreatePortfolioRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not Found",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
},
"put": {
"tags": [
"Governance"
],
"description": "Update an existing organization portfolio",
"operationId": "updateportfolio",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdatePortfolioRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/governance/tenants": {
"post": {
"tags": [
"Governance"
],
"description": "Create a new tenant",
"operationId": "createtenant",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateTenantRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
},
"get": {
"tags": [
"Governance"
],
"description": "Gets system tenants",
"operationId": "gettenantsretrieval",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Tenant"
}
}
}
}
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
},
"put": {
"tags": [
"Governance"
],
"description": "Updates a specific tenant",
"operationId": "updatetenant",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateTenantRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/governance/dashboard": {
"get": {
"tags": [
"Governance"
],
"description": "Get executive portfolio dashboard metrics and KPIs",
"operationId": "dashboard",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Dashboard"
}
}
}
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/governance/auditlog": {
"post": {
"tags": [
"Governance"
],
"description": "Retrieves audit logs based on pagination parameters",
"operationId": "getauditlogs",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Pagination"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AuditLog"
}
}
}
}
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/governance/instruments/{programmeId}": {
"get": {
"tags": [
"Governance"
],
"description": "Get all funding instruments",
"operationId": "getinstruments",
"parameters": [
{
"name": "programmeId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Instrument"
}
}
}
}
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/governance/organisations/{organisationId}": {
"get": {
"tags": [
"Governance"
],
"description": "Get organization profile by ID",
"operationId": "getorganisation",
"parameters": [
{
"name": "organisationId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Organisation"
}
}
}
},
"404": {
"description": "Not Found"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/governance/organisations/{organisationId}/portfolio": {
"get": {
"tags": [
"Governance"
],
"description": "Get all portfolios belonging to a specific organisation",
"operationId": "getorganisationportfolios",
"parameters": [
{
"name": "organisationId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Portfolio"
}
}
}
}
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/governance/portfolios/{portfolioId}/value": {
"get": {
"tags": [
"Governance"
],
"description": "Calculates and returns a portfolio's total project's budget value",
"operationId": "getporfoliovalue",
"parameters": [
{
"name": "portfolioId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
}
}
}
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/governance/portfolios/{portfolioId}": {
"get": {
"tags": [
"Governance"
],
"description": "Get a specific portfolios",
"operationId": "getportfolio",
"parameters": [
{
"name": "portfolioId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Portfolio"
}
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Portfolio"
}
}
}
}
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/governance/portfolios/{portfolioId}/programmes": {
"get": {
"tags": [
"Governance"
],
"description": "Get a programme's portfolios",
"operationId": "getportfolioprogrammes",
"parameters": [
{
"name": "portfolioId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Programme"
}
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/governance/organisations/portfolios": {
"post": {
"tags": [
"Governance"
],
"description": "Get all portfolios",
"operationId": "getportfolios",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Pagination"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Portfolio"
}
}
}
}
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/governance/programmes/{portfolioId}": {
"get": {
"tags": [
"Governance"
],
"description": "Get all programmes",
"operationId": "getprogrammes",
"parameters": [
{
"name": "portfolioId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Programme"
}
}
}
}
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/governance/programmes/{programmeId}/value": {
"get": {
"tags": [
"Governance"
],
"description": "Calculates and returns a programme's total project budget value",
"operationId": "getprogrammevalue",
"parameters": [
{
"name": "programmeId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
}
}
}
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/governance/tenants/{tenantId}": {
"get": {
"tags": [
"Governance"
],
"description": "Gets system tenants",
"operationId": "gettenants",
"parameters": [
{
"name": "tenantId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Tenant"
}
}
}
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not Found",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/execution/disbursements/{disbursementId}/approve": {
"post": {
"tags": [
"Execution"
],
"description": "Approve disbursement and release payment (M06)",
"operationId": "approvedisbursement",
"parameters": [
{
"name": "disbursementId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/execution/disbursements": {
"post": {
"tags": [
"Execution"
],
"description": "Create a new disbursement schedule (M06)",
"operationId": "createdisbursement",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateDisbursementRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"404": {
"description": "Not Found"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
},
"get": {
"tags": [
"Execution"
],
"description": "Get a list of disbursements",
"operationId": "getdisbursements",
"parameters": [
{
"name": "page",
"in": "query",
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32",
"default": 1
}
},
{
"name": "pageSize",
"in": "query",
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32",
"default": 10
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Disbursement"
}
}
}
}
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not Found"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
},
"put": {
"tags": [
"Execution"
],
"description": "Update the details of a specific disbursement",
"operationId": "updatedisbursement",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateDisbursementRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
}
},
"/v1/api/execution/risks": {
"post": {
"tags": [
"Execution"
],
"description": "Add risk to risk register (M09)",
"operationId": "createrisk",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateRiskRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"404": {
"description": "Not Found"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
},
"get": {
"tags": [
"Execution"
],
"description": "Get a list of all risks",
"operationId": "getrisks",
"parameters": [
{
"name": "page",
"in": "query",
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32",
"default": 1
}
},
{
"name": "pageSize",
"in": "query",
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32",
"default": 100
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Risk"
}
}
}
}
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
},
"put": {
"tags": [
"Execution"
],
"description": "Update the details of a specific risk",
"operationId": "updaterisk",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateRiskRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/execution/rules": {
"post": {
"tags": [
"Execution"
],
"description": "Add rule against a programme",
"operationId": "createrule",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateRuleRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
},
"put": {
"tags": [
"Execution"
],
"description": "Update the details of a specific programme rule (supplied version auto-increment)",
"operationId": "updaterule",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateRuleRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/execution/disbursements/{disbursementId}": {
"get": {
"tags": [
"Execution"
],
"description": "Get a specific disbursement",
"operationId": "getdisbursement",
"parameters": [
{
"name": "disbursementId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Disbursement"
}
}
}
},
"404": {
"description": "Not Found"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/execution/risks/{riskId}": {
"get": {
"tags": [
"Execution"
],
"description": "Get a specific risk",
"operationId": "getrisk",
"parameters": [
{
"name": "riskId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Risk"
}
}
}
},
"404": {
"description": "Not Found"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/execution/rules/{ruleId}": {
"get": {
"tags": [
"Execution"
],
"description": "Get a specific programme rule",
"operationId": "getrule",
"parameters": [
{
"name": "ruleId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Rule"
}
}
}
},
"404": {
"description": "Not Found"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/execution/programmes/rules": {
"post": {
"tags": [
"Execution"
],
"description": "Get a list of all programme rules",
"operationId": "getrules",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Pagination"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Rule"
}
}
}
}
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/evidence/file": {
"put": {
"tags": [
"Evidence & M&E"
],
"description": "Upload supporting evidence file to S3 and register metadata (M14)",
"operationId": "createevidence",
"responses": {
"200": {
"description": "OK"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
}
},
"/v1/api/evidence/indicators": {
"post": {
"tags": [
"Evidence & M&E"
],
"description": "Define indicators and baselines/targets (M08)",
"operationId": "createindicator",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateIndicatorRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"404": {
"description": "Not Found"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/evidence/milestones": {
"post": {
"tags": [
"Evidence & M&E"
],
"description": "Define contractual milestones (M07)",
"operationId": "createmilestonerequest",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/CreateMilestoneRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/evidence/{evidenceId}": {
"get": {
"tags": [
"Evidence & M&E"
],
"description": "Get a specific evidence record and assiciated file URLs",
"operationId": "getevidence",
"parameters": [
{
"name": "evidenceId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Evidence"
}
}
}
},
"404": {
"description": "Not Found"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/evidence/files/{page}/{pageSize}": {
"get": {
"tags": [
"Evidence & M&E"
],
"description": "Get a list of all uploaded evidence files metadata",
"operationId": "getevidencefiles",
"parameters": [
{
"name": "page",
"in": "path",
"required": true,
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": "integer",
"format": "int32",
"default": 1
}
},
{
"name": "pageSize",
"in": "path",
"required": true,
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": "integer",
"format": "int32",
"default": 100
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Evidence"
}
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
}
},
"/v1/api/evidence/{evidenceId}/securelink": {
"get": {
"tags": [
"Grants"
],
"description": "Gets a secure download URL of the evidence file, URL expires (default: 15min)",
"operationId": "getevidenceurl",
"parameters": [
{
"name": "evidenceId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "string"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"application/json; version=1": {
"schema": {
"type": "string"
}
}
}
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/evidence/indicators/{indicatorId}": {
"get": {
"tags": [
"Evidence & M&E"
],
"description": "Get a specific indicator.",
"operationId": "getindicator",
"parameters": [
{
"name": "indicatorId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Indicator"
}
}
}
},
"404": {
"description": "Not Found"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/evidence/indicators/{page}/{pageSize}": {
"get": {
"tags": [
"Evidence & M&E"
],
"description": "Get a list of indicators",
"operationId": "getindicators",
"parameters": [
{
"name": "page",
"in": "path",
"required": true,
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": "integer",
"format": "int32",
"default": 1
}
},
{
"name": "pageSize",
"in": "path",
"required": true,
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": "integer",
"format": "int32",
"default": 100
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Indicator"
}
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
}
},
"/v1/api/evidence/milestone/{milestoneId}": {
"get": {
"tags": [
"Evidence & M&E"
],
"description": "Get a list of all uploaded evidence metadata for a specific mliestone",
"operationId": "getmilestoneevidence",
"parameters": [
{
"name": "milestoneId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Evidence"
}
}
}
}
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/evidence/{projectId}": {
"get": {
"tags": [
"Evidence & M&E"
],
"description": "Get a list of all uploaded evidence metadata for a specific project",
"operationId": "getprojectevidence",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Evidence"
}
}
}
}
},
"404": {
"description": "Not Found"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/evidence/indicators/{indicatorId}/actuals/{actualAmount}": {
"post": {
"tags": [
"Evidence & M&E"
],
"description": "Record actual values for indicators (M08)",
"operationId": "recordindicatoramount",
"parameters": [
{
"name": "indicatorId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "actualAmount",
"in": "path",
"required": true,
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": "number",
"format": "double"
}
}
],
"responses": {
"200": {
"description": "OK"
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/evidence": {
"put": {
"tags": [
"Evidence & M&E"
],
"description": "Updates a specific evidence record metadata",
"operationId": "updateevidence",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/UpdateEvidenceRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
},
"404": {
"description": "Not Found"
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/communications/invites/applicants/{applicantUserId}": {
"get": {
"tags": [
"Communications"
],
"description": "Gets an applicant's invite",
"operationId": "getapplicantinvite",
"parameters": [
{
"name": "applicantUserId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Invite"
}
}
}
},
"404": {
"description": "Not Found"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/communications/invites/{applicantUserId}": {
"get": {
"tags": [
"Communications"
],
"description": "Gets an applicant's invite list",
"operationId": "getapplicantinvites",
"parameters": [
{
"name": "applicantUserId",
"in": "path",
"required": true,
"schema": {
"type": "string",
"format": "uuid"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Invite"
}
}
}
}
},
"404": {
"description": "Not Found"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/communications/invites/{page}/{pageSize}": {
"get": {
"tags": [
"Communications"
],
"description": "Get a list of sent invitations",
"operationId": "getinvites",
"parameters": [
{
"name": "page",
"in": "path",
"required": true,
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": "integer",
"format": "int32",
"default": 1
}
},
{
"name": "pageSize",
"in": "path",
"required": true,
"schema": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": "integer",
"format": "int32",
"default": 100
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Invite"
}
}
}
}
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/communications/norifications/{organisationId}": {
"get": {
"tags": [
"Communications"
],
"description": "Retrieves the notification system report",
"operationId": "getnotifications",
"parameters": [
{
"name": "organisationId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Notification"
}
}
}
}
},
"403": {
"description": "Forbidden"
},
"401": {
"description": "Unauthorized"
},
"404": {
"description": "Not Found",
"content": {
"application/json; version=1": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Notification"
}
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
},
"security": [
{}
]
}
},
"/v1/api/communications/invites": {
"post": {
"tags": [
"Communications"
],
"description": "Trigger an invite to an organization or candidate (specifying NotificationPlatform)",
"operationId": "sendinvite",
"requestBody": {
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/InviteRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/Invite"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json; version=1": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"401": {
"description": "Unauthorized"
}
},
"security": [
{}
]
}
}
},
"components": {
"schemas": {
"Activity": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"null",
"integer",
"string"
],
"format": "int64"
},
"milestoneId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"null",
"integer",
"string"
],
"format": "int64"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"updatedBy": {
"type": [
"null",
"string"
],
"format": "uuid"
},
"approvedBy": {
"type": [
"null",
"string"
],
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"updatedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"category": {
"type": [
"null",
"string"
]
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
},
"amount": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
},
"title": {
"type": [
"null",
"string"
]
},
"description": {
"type": [
"null",
"string"
]
},
"performedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
}
}
},
"ActivityStatus": {
"type": "integer"
},
"ApprovalStatus": {
"type": "integer"
},
"AuditLog": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"null",
"integer",
"string"
],
"format": "int64"
},
"entityName": {
"type": [
"null",
"string"
]
},
"entityId": {
"type": [
"null",
"string"
]
},
"action": {
"type": [
"null",
"string"
]
},
"changes": {
"type": [
"null",
"array"
],
"items": {
"type": "string"
}
},
"performedBy": {
"type": "string",
"format": "uuid"
},
"timestamp": {
"type": "string",
"format": "date-time"
}
}
},
"Award": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"organisationId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"programmeId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"null",
"integer",
"string"
],
"format": "int64"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"updatedBy": {
"type": [
"null",
"string"
],
"format": "uuid"
},
"approvedBy": {
"type": [
"null",
"string"
],
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"updatedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
},
"amount": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
}
}
},
"Beneficiary": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"userId": {
"type": "string",
"format": "uuid"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"name": {
"type": [
"null",
"string"
]
},
"category": {
"type": [
"null",
"string"
]
},
"targetCount": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32"
},
"reachedCount": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32"
},
"location": {
"type": [
"null",
"string"
]
}
}
},
"Budget": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"approvedBy": {
"type": [
"null",
"string"
],
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"updatedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"name": {
"type": [
"null",
"string"
]
},
"amount": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
}
}
},
"ChangeRequest": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"title": {
"type": [
"null",
"string"
]
},
"justification": {
"type": [
"null",
"string"
]
},
"revisedBudget": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"null",
"number",
"string"
],
"format": "double"
},
"revisedEndedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"approvedBy": {
"type": [
"null",
"string"
],
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"updatedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
}
}
},
"ComplianceItem": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"title": {
"type": [
"null",
"string"
]
},
"requirements": {
"type": [
"null",
"string"
]
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"verifiedBy": {
"type": [
"null",
"string"
],
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"updatedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
}
}
},
"Contract": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"awardId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"externalSignatureId": {
"type": [
"null",
"string"
]
},
"signedDocumentUrl": {
"type": [
"null",
"string"
]
},
"effectiveAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"expiresAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"totalValue": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
},
"status": {
"$ref": "#/components/schemas/ContractStatus"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
}
}
},
"ContractStatus": {
"type": "integer"
},
"CreateActivityRequest": {
"required": [
"projectId",
"milestoneId",
"category",
"amount",
"title",
"description",
"performedAt"
],
"type": "object",
"properties": {
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"milestoneId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"null",
"integer",
"string"
],
"format": "int64"
},
"category": {
"type": "string"
},
"amount": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
},
"title": {
"type": "string"
},
"description": {
"type": "string"
},
"performedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
}
}
},
"CreateAwardRequest": {
"required": [
"organisationId",
"programmeId",
"amount"
],
"type": "object",
"properties": {
"organisationId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"programmeId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"amount": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
}
}
},
"CreateBeneficiaryRequest": {
"required": [
"projectId",
"name",
"category",
"location",
"targetCount",
"reachedCount"
],
"type": "object",
"properties": {
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"name": {
"type": "string"
},
"category": {
"type": "string"
},
"location": {
"type": "string"
},
"targetCount": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32"
},
"reachedCount": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32"
}
}
},
"CreateBudgetRequest": {
"required": [
"projectId",
"name",
"amount"
],
"type": "object",
"properties": {
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"name": {
"type": "string"
},
"amount": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
}
}
},
"CreateChangeRequest": {
"required": [
"projectId",
"title",
"justification",
"revisedBudget",
"revisionDate"
],
"type": "object",
"properties": {
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"title": {
"type": "string"
},
"justification": {
"type": "string"
},
"revisedBudget": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
},
"revisionDate": {
"type": "string",
"format": "date-time"
}
}
},
"CreateComplianceItemRequest": {
"required": [
"projectId",
"title",
"requirements"
],
"type": "object",
"properties": {
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"title": {
"type": "string"
},
"requirements": {
"type": "string"
}
}
},
"CreateContractRequest": {
"required": [
"awardId",
"totalValue",
"effectiveAt",
"expiresAt"
],
"type": "object",
"properties": {
"awardId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"totalValue": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
},
"effectiveAt": {
"type": "string",
"format": "date-time"
},
"expiresAt": {
"type": "string",
"format": "date-time"
}
}
},
"CreateDisbursementRequest": {
"required": [
"projectId",
"milestoneId",
"amount"
],
"type": "object",
"properties": {
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"milestoneId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"null",
"integer",
"string"
],
"format": "int64"
},
"amount": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
}
}
},
"CreateIndicatorRequest": {
"required": [
"projectId",
"name",
"unitOfMeasure",
"baselineAmount",
"targetAmount"
],
"type": "object",
"properties": {
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"name": {
"type": "string"
},
"unitOfMeasure": {
"$ref": "#/components/schemas/UnitOfMeasure"
},
"baselineAmount": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
},
"targetAmount": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
}
}
},
"CreateInstrumentRequest": {
"required": [
"programmeId",
"name",
"code",
"description"
],
"type": "object",
"properties": {
"programmeId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"name": {
"type": "string"
},
"code": {
"type": "string"
},
"description": {
"type": "string"
}
}
},
"CreateIssueRequest": {
"required": [
"projectId",
"title",
"description",
"priority",
"assignedTo"
],
"type": "object",
"properties": {
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"title": {
"type": "string"
},
"description": {
"type": "string"
},
"priority": {
"$ref": "#/components/schemas/Priority"
},
"assignedTo": {
"type": "string",
"format": "uuid"
}
}
},
"CreateMilestoneRequest": {
"required": [
"projectId",
"dueAt",
"name",
"priority"
],
"type": "object",
"properties": {
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"dueAt": {
"type": "string",
"format": "date-time"
},
"name": {
"type": "string"
},
"priority": {
"$ref": "#/components/schemas/Priority"
}
}
},
"CreateOrganisationRequest": {
"required": [
"name",
"registrationNo",
"email"
],
"type": "object",
"properties": {
"name": {
"type": "string"
},
"registrationNo": {
"type": "string"
},
"email": {
"type": "string"
},
"type": {
"$ref": "#/components/schemas/OrganisationType"
}
}
},
"CreateOutcomeRequest": {
"required": [
"beneficiaryId",
"name",
"description"
],
"type": "object",
"properties": {
"beneficiaryId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
}
}
},
"CreatePortfolioRequest": {
"required": [
"name",
"description",
"organisationId",
"ownerId"
],
"type": "object",
"properties": {
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"organisationId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"ownerId": {
"type": "string",
"format": "uuid"
}
}
},
"CreateProgrammeRequest": {
"required": [
"portfolioId",
"name",
"ownerId"
],
"type": "object",
"properties": {
"portfolioId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"name": {
"type": "string"
},
"ownerId": {
"type": "string",
"format": "uuid"
}
}
},
"CreateProjectRequest": {
"required": [
"programmeId",
"name",
"description",
"sector",
"projectType"
],
"type": "object",
"properties": {
"programmeId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"sector": {
"$ref": "#/components/schemas/IndustrySector"
},
"projectType": {
"$ref": "#/components/schemas/ProjectType"
}
}
},
"CreateRiskRequest": {
"required": [
"projectId",
"likelihood",
"impact",
"name",
"description"
],
"type": "object",
"properties": {
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"likelihood": {
"$ref": "#/components/schemas/RiskLikelihood"
},
"impact": {
"$ref": "#/components/schemas/RiskImpact"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
}
}
},
"CreateRuleRequest": {
"required": [
"programmeId",
"userId",
"name",
"description"
],
"type": "object",
"properties": {
"programmeId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"userId": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
}
}
},
"CreateSiteVisitRequest": {
"required": [
"projectId",
"inspectorName",
"findings",
"visitedAt"
],
"type": "object",
"properties": {
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"inspectorName": {
"type": "string"
},
"findings": {
"type": "string"
},
"visitedAt": {
"type": "string",
"format": "date-time"
}
}
},
"CreateTenantRequest": {
"required": [
"name"
],
"type": "object",
"properties": {
"name": {
"type": "string"
}
}
},
"Dashboard": {
"required": [
"portfolioValue",
"activeAwards",
"disbursed",
"onTrackPercentage",
"atRiskCount",
"beneficiariesReached"
],
"type": "object",
"properties": {
"portfolioValue": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
},
"activeAwards": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32"
},
"disbursed": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
},
"onTrackPercentage": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
},
"atRiskCount": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32"
},
"beneficiariesReached": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32"
}
}
},
"Disbursement": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"milestoneId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"null",
"integer",
"string"
],
"format": "int64"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"updatedBy": {
"type": [
"null",
"string"
],
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"updatedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"amount": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
}
}
},
"Evidence": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"milestoneId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"indicatorId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"activityId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"updatedBy": {
"type": [
"null",
"string"
],
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"updatedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"version": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32"
},
"type": {
"$ref": "#/components/schemas/EvidenceType"
},
"documentUrl": {
"type": [
"null",
"string"
]
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
}
}
},
"EvidenceType": {
"type": "integer"
},
"ExecuteContractRequest": {
"required": [
"contractId",
"externalSignatureId",
"signedDocumentUrl"
],
"type": "object",
"properties": {
"contractId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"externalSignatureId": {
"type": "string"
},
"signedDocumentUrl": {
"type": "string"
}
}
},
"Indicator": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"name": {
"type": [
"null",
"string"
]
},
"unitOfMeasure": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/UnitOfMeasure"
}
]
},
"baselineAmount": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
},
"targetAmount": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
},
"actualAmount": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
}
}
},
"IndustrySector": {
"type": "integer"
},
"Instrument": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"programmeId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"code": {
"type": [
"null",
"string"
]
},
"name": {
"type": [
"null",
"string"
]
},
"description": {
"type": [
"null",
"string"
]
},
"status": {
"$ref": "#/components/schemas/ActivityStatus"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
}
}
},
"Invite": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"organisationId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"invitedOrganisationId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"awardId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"contractId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"recipient": {
"type": "string",
"format": "uuid"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"updatedBy": {
"type": [
"null",
"string"
],
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"updatedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
}
}
},
"InviteRequest": {
"required": [
"organisationId",
"invitedOrganisationId",
"awardId",
"contractId",
"recipient",
"message",
"platform"
],
"type": "object",
"properties": {
"organisationId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"invitedOrganisationId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"awardId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"contractId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"recipient": {
"type": "string",
"format": "uuid"
},
"message": {
"type": "string"
},
"platform": {
"$ref": "#/components/schemas/NotificationPlatform"
}
}
},
"Issue": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"title": {
"type": [
"null",
"string"
]
},
"description": {
"type": [
"null",
"string"
]
},
"priority": {
"$ref": "#/components/schemas/Priority"
},
"status": {
"$ref": "#/components/schemas/ActivityStatus"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"assignedTo": {
"type": [
"null",
"string"
],
"format": "uuid"
},
"resolvedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"resolution": {
"type": [
"null",
"string"
]
}
}
},
"Milestone": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"updatedBy": {
"type": [
"null",
"string"
],
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"updatedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"dueAt": {
"type": "string",
"format": "date-time"
},
"name": {
"type": [
"null",
"string"
]
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
},
"priority": {
"$ref": "#/components/schemas/Priority"
}
}
},
"Notification": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"organisationId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"recipient": {
"type": "string",
"format": "uuid"
},
"platform": {
"$ref": "#/components/schemas/NotificationPlatform"
},
"status": {
"$ref": "#/components/schemas/NotificationStatus"
},
"subject": {
"type": [
"null",
"string"
]
},
"message": {
"type": [
"null",
"string"
]
},
"destination": {
"type": [
"null",
"string"
]
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"sentAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"updatedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"error": {
"type": [
"null",
"string"
]
}
}
},
"NotificationPlatform": {
"type": "integer"
},
"NotificationStatus": {
"type": "integer"
},
"Organisation": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"registrationNo": {
"type": [
"null",
"string"
]
},
"name": {
"type": [
"null",
"string"
]
},
"email": {
"type": [
"null",
"string"
]
},
"type": {
"$ref": "#/components/schemas/OrganisationType"
},
"status": {
"$ref": "#/components/schemas/ActivityStatus"
}
}
},
"OrganisationType": {
"type": "integer",
"default": 5
},
"Outcome": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"beneficiaryId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"name": {
"type": [
"null",
"string"
]
},
"description": {
"type": [
"null",
"string"
]
}
}
},
"Pagination": {
"type": "object",
"properties": {
"index": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"page": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32"
},
"pageSize": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32"
}
}
},
"Portfolio": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"organisationId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"ownedBy": {
"type": "string",
"format": "uuid"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"name": {
"type": [
"null",
"string"
]
},
"description": {
"type": [
"null",
"string"
]
}
}
},
"Priority": {
"type": "integer"
},
"ProblemDetails": {
"type": "object",
"properties": {
"type": {
"type": [
"null",
"string"
]
},
"title": {
"type": [
"null",
"string"
]
},
"status": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"null",
"integer",
"string"
],
"format": "int32"
},
"detail": {
"type": [
"null",
"string"
]
},
"instance": {
"type": [
"null",
"string"
]
}
}
},
"Programme": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"portfolioId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"ownedBy": {
"type": "string",
"format": "uuid"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"updatedBy": {
"type": [
"null",
"string"
],
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"updatedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"name": {
"type": [
"null",
"string"
]
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
}
}
},
"Project": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"programmeId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"updatedBy": {
"type": [
"null",
"string"
],
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"updatedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"startedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"endedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"sector": {
"$ref": "#/components/schemas/IndustrySector"
},
"projectType": {
"$ref": "#/components/schemas/ProjectType"
},
"name": {
"type": [
"null",
"string"
]
},
"description": {
"type": [
"null",
"string"
]
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
}
}
},
"ProjectType": {
"type": "integer"
},
"Risk": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"likelihood": {
"$ref": "#/components/schemas/RiskLikelihood"
},
"impact": {
"$ref": "#/components/schemas/RiskImpact"
},
"name": {
"type": [
"null",
"string"
]
},
"description": {
"type": [
"null",
"string"
]
}
}
},
"RiskImpact": {
"type": "integer"
},
"RiskLikelihood": {
"type": "integer"
},
"Rule": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"programmeId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"updatedBy": {
"type": [
"null",
"string"
],
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"updatedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"name": {
"type": [
"null",
"string"
]
},
"description": {
"type": [
"null",
"string"
]
},
"version": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32"
},
"status": {
"$ref": "#/components/schemas/ActivityStatus"
}
}
},
"SiteVisit": {
"type": "object",
"properties": {
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"visitedAt": {
"type": "string",
"format": "date-time"
},
"inspectorName": {
"type": [
"null",
"string"
]
},
"findings": {
"type": [
"null",
"string"
]
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
}
}
},
"Tenant": {
"type": "object",
"properties": {
"creator": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/User"
}
]
},
"updator": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/User"
}
]
},
"id": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"createdBy": {
"type": "string",
"format": "uuid"
},
"updatedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"updatedBy": {
"type": [
"null",
"string"
],
"format": "uuid"
},
"name": {
"type": [
"null",
"string"
]
},
"status": {
"$ref": "#/components/schemas/ActivityStatus"
}
}
},
"UnitOfMeasure": {
"type": "integer"
},
"UpdateBeneficiaryRequest": {
"required": [
"beneficiaryId",
"name",
"category",
"location",
"targetCount",
"reachedCount"
],
"type": "object",
"properties": {
"beneficiaryId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"name": {
"type": "string"
},
"category": {
"type": "string"
},
"location": {
"type": "string"
},
"targetCount": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32"
},
"reachedCount": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32"
}
}
},
"UpdateBudgetRequest": {
"required": [
"budgetId",
"status"
],
"type": "object",
"properties": {
"budgetId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
}
}
},
"UpdateChangeRequest": {
"required": [
"changeRequestId",
"title",
"justification",
"revisedBudget",
"status"
],
"type": "object",
"properties": {
"changeRequestId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"title": {
"type": "string"
},
"justification": {
"type": "string"
},
"revisedBudget": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
}
}
},
"UpdateComplianceItemRequest": {
"required": [
"complianceItemId",
"title",
"requirements",
"status"
],
"type": "object",
"properties": {
"complianceItemId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"title": {
"type": "string"
},
"requirements": {
"type": "string"
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
}
}
},
"UpdateContractRequest": {
"required": [
"contractId",
"status"
],
"type": "object",
"properties": {
"contractId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"status": {
"$ref": "#/components/schemas/ContractStatus"
}
}
},
"UpdateDisbursementRequest": {
"required": [
"disbursementId",
"milestoneId",
"amount"
],
"type": "object",
"properties": {
"disbursementId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"milestoneId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"null",
"integer",
"string"
],
"format": "int64"
},
"amount": {
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
"type": [
"number",
"string"
],
"format": "double"
}
}
},
"UpdateEvidenceRequest": {
"required": [
"evidenceId",
"version",
"evidenceType",
"status"
],
"type": "object",
"properties": {
"evidenceId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"version": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32"
},
"evidenceType": {
"$ref": "#/components/schemas/EvidenceType"
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
}
}
},
"UpdateInstrumentRequest": {
"required": [
"instructionId",
"name",
"code",
"description",
"status"
],
"type": "object",
"properties": {
"instructionId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"name": {
"type": "string"
},
"code": {
"type": "string"
},
"description": {
"type": "string"
},
"status": {
"$ref": "#/components/schemas/ActivityStatus"
}
}
},
"UpdateIssueRequest": {
"required": [
"issueId",
"title",
"description",
"resolution",
"resolvedAt",
"priority",
"status",
"assignedTo"
],
"type": "object",
"properties": {
"issueId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"title": {
"type": "string"
},
"description": {
"type": "string"
},
"resolution": {
"type": "string"
},
"resolvedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"priority": {
"$ref": "#/components/schemas/Priority"
},
"status": {
"$ref": "#/components/schemas/ActivityStatus"
},
"assignedTo": {
"type": "string",
"format": "uuid"
}
}
},
"UpdateMilestoneRequest": {
"required": [
"milestoneId",
"dueAt",
"name",
"priority",
"status"
],
"type": "object",
"properties": {
"milestoneId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"dueAt": {
"type": "string",
"format": "date-time"
},
"name": {
"type": "string"
},
"priority": {
"$ref": "#/components/schemas/Priority"
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
}
}
},
"UpdateOrganisationRequest": {
"required": [
"organisationId",
"name",
"registrationNo",
"email",
"type",
"status"
],
"type": "object",
"properties": {
"organisationId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"name": {
"type": "string"
},
"registrationNo": {
"type": "string"
},
"email": {
"type": "string"
},
"type": {
"$ref": "#/components/schemas/OrganisationType"
},
"status": {
"$ref": "#/components/schemas/ActivityStatus"
}
}
},
"UpdateOutcomeRequest": {
"required": [
"outcomeId",
"name",
"description"
],
"type": "object",
"properties": {
"outcomeId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
}
}
},
"UpdatePortfolioRequest": {
"required": [
"portfolioId",
"name",
"description",
"ownerId"
],
"type": "object",
"properties": {
"portfolioId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"ownerId": {
"type": "string",
"format": "uuid"
}
}
},
"UpdateProgrammeRequest": {
"required": [
"programmeId",
"name",
"ownerId",
"status"
],
"type": "object",
"properties": {
"programmeId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"name": {
"type": "string"
},
"ownerId": {
"type": "string",
"format": "uuid"
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
}
}
},
"UpdateProjectRequest": {
"required": [
"projectId",
"name",
"description",
"startedAt",
"endedAt",
"sector",
"projectType"
],
"type": "object",
"properties": {
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"startedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"endedAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"sector": {
"$ref": "#/components/schemas/IndustrySector"
},
"projectType": {
"$ref": "#/components/schemas/ProjectType"
}
}
},
"UpdateProjectStatusRequest": {
"required": [
"projectId",
"status"
],
"type": "object",
"properties": {
"projectId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
}
}
},
"UpdateRiskRequest": {
"required": [
"riskId",
"likelihood",
"impact",
"name",
"description"
],
"type": "object",
"properties": {
"riskId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"likelihood": {
"$ref": "#/components/schemas/RiskLikelihood"
},
"impact": {
"$ref": "#/components/schemas/RiskImpact"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
}
}
},
"UpdateRuleRequest": {
"required": [
"ruleId",
"userId",
"name",
"description",
"status",
"version"
],
"type": "object",
"properties": {
"ruleId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"userId": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"status": {
"$ref": "#/components/schemas/ActivityStatus"
},
"version": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int32"
}
}
},
"UpdateSiteVisitRequest": {
"required": [
"siteVisitId",
"inspectorName",
"findings",
"status",
"visitedAt"
],
"type": "object",
"properties": {
"siteVisitId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"inspectorName": {
"type": "string"
},
"findings": {
"type": "string"
},
"status": {
"$ref": "#/components/schemas/ApprovalStatus"
},
"visitedAt": {
"type": "string",
"format": "date-time"
}
}
},
"UpdateTenantRequest": {
"required": [
"tenantId",
"name",
"status"
],
"type": "object",
"properties": {
"tenantId": {
"pattern": "^-?(?:0|[1-9]\\d*)$",
"type": [
"integer",
"string"
],
"format": "int64"
},
"name": {
"type": "string"
},
"status": {
"$ref": "#/components/schemas/ActivityStatus"
}
}
},
"User": {
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"lastLoginAt": {
"type": [
"null",
"string"
],
"format": "date-time"
},
"email": {
"type": [
"null",
"string"
]
},
"status": {
"$ref": "#/components/schemas/ActivityStatus"
}
}
},
"UserFilterRequest": {
"type": "object",
"properties": {
"status": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/ActivityStatus"
}
]
},
"email": {
"type": [
"null",
"string"
]
},
"sortBy": {
"type": [
"null",
"string"
]
},
"sortDescending": {
"type": "boolean",
"default": false
}
}
}
},
"securitySchemes": {
"Bearer": {
"type": "http",
"description": "JWT Authorization header using the Bearer scheme",
"scheme": "bearer"
},
"OAuth2": {
"type": "oauth2",
"description": "Interactive OAuth2 flow for authentication and authorization",
"flows": {
"authorizationCode": {
"authorizationUrl": "https://sts.security.khongisa.co.za/connect/authorize",
"tokenUrl": "https://sts.security.khongisa.co.za/connect/token",
"scopes": {
"openid": "OpenID Connect",
"profile": "User Profile",
"roles": "User Roles",
"email": "User Email",
"address": "User Address",
"pfm-api-dev": "PFM API Scope"
}
}
}
}
}
},
"tags": [
{
"name": "Users"
},
{
"name": "Projects"
},
{
"name": "Grants"
},
{
"name": "Governance"
},
{
"name": "Execution"
},
{
"name": "Evidence & M&E"
},
{
"name": "Communications"
}
]
}