9174 lines
220 KiB
JSON
9174 lines
220 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/beneficiaries/{projectId}": {
|
|
"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/changerequests/{projectId}": {
|
|
"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/issues/{projectId}": {
|
|
"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/sitevisits/{projectId}": {
|
|
"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": [
|
|
{}
|
|
]
|
|
}
|
|
},
|
|
"/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/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/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/{organisationId}/portfolio": {
|
|
"get": {
|
|
"tags": [
|
|
"Governance"
|
|
],
|
|
"description": "Get all portfolios",
|
|
"operationId": "getportfolios",
|
|
"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/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/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"
|
|
},
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
"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"
|
|
}
|
|
]
|
|
} |