5706 lines
126 KiB
JSON
5706 lines
126 KiB
JSON
[
|
|
{
|
|
"tag": "Communications",
|
|
"method": "POST",
|
|
"path": "/v1/api/communications/invites",
|
|
"opId": "sendinvite",
|
|
"desc": "Trigger an invite to an organization or candidate (specifying NotificationPlatform)",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Communications",
|
|
"method": "GET",
|
|
"path": "/v1/api/communications/invites/applicants/{applicantUserId}",
|
|
"opId": "getapplicantinvite",
|
|
"desc": "Gets an applicant's invite",
|
|
"params": [
|
|
{
|
|
"name": "applicantUserId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Communications",
|
|
"method": "GET",
|
|
"path": "/v1/api/communications/invites/{applicantUserId}",
|
|
"opId": "getapplicantinvites",
|
|
"desc": "Gets an applicant's invite list",
|
|
"params": [
|
|
{
|
|
"name": "applicantUserId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Communications",
|
|
"method": "GET",
|
|
"path": "/v1/api/communications/invites/{page}/{pageSize}",
|
|
"opId": "getinvites",
|
|
"desc": "Get a list of sent invitations",
|
|
"params": [
|
|
{
|
|
"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
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Communications",
|
|
"method": "GET",
|
|
"path": "/v1/api/communications/norifications/{organisationId}",
|
|
"opId": "getnotifications",
|
|
"desc": "Retrieves the notification system report",
|
|
"params": [
|
|
{
|
|
"name": "organisationId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Evidence & M&E",
|
|
"method": "PUT",
|
|
"path": "/v1/api/evidence",
|
|
"opId": "updateevidence",
|
|
"desc": "Updates a specific evidence record metadata",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Evidence & M&E",
|
|
"method": "PUT",
|
|
"path": "/v1/api/evidence/file",
|
|
"opId": "createevidence",
|
|
"desc": "Upload supporting evidence file to S3 and register metadata (M14)",
|
|
"params": [],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Evidence & M&E",
|
|
"method": "GET",
|
|
"path": "/v1/api/evidence/files/{page}/{pageSize}",
|
|
"opId": "getevidencefiles",
|
|
"desc": "Get a list of all uploaded evidence files metadata",
|
|
"params": [
|
|
{
|
|
"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
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Evidence & M&E",
|
|
"method": "POST",
|
|
"path": "/v1/api/evidence/indicators",
|
|
"opId": "createindicator",
|
|
"desc": "Define indicators and baselines/targets (M08)",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Evidence & M&E",
|
|
"method": "GET",
|
|
"path": "/v1/api/evidence/indicators/{indicatorId}",
|
|
"opId": "getindicator",
|
|
"desc": "Get a specific indicator.",
|
|
"params": [
|
|
{
|
|
"name": "indicatorId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Evidence & M&E",
|
|
"method": "POST",
|
|
"path": "/v1/api/evidence/indicators/{indicatorId}/actuals/{actualAmount}",
|
|
"opId": "recordindicatoramount",
|
|
"desc": "Record actual values for indicators (M08)",
|
|
"params": [
|
|
{
|
|
"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"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Evidence & M&E",
|
|
"method": "GET",
|
|
"path": "/v1/api/evidence/indicators/{page}/{pageSize}",
|
|
"opId": "getindicators",
|
|
"desc": "Get a list of indicators",
|
|
"params": [
|
|
{
|
|
"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
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Evidence & M&E",
|
|
"method": "GET",
|
|
"path": "/v1/api/evidence/milestone/{milestoneId}",
|
|
"opId": "getmilestoneevidence",
|
|
"desc": "Get a list of all uploaded evidence metadata for a specific mliestone",
|
|
"params": [
|
|
{
|
|
"name": "milestoneId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Evidence & M&E",
|
|
"method": "POST",
|
|
"path": "/v1/api/evidence/milestones",
|
|
"opId": "createmilestonerequest",
|
|
"desc": "Define contractual milestones (M07)",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Evidence & M&E",
|
|
"method": "GET",
|
|
"path": "/v1/api/evidence/{evidenceId}",
|
|
"opId": "getevidence",
|
|
"desc": "Get a specific evidence record and assiciated file URLs",
|
|
"params": [
|
|
{
|
|
"name": "evidenceId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Grants",
|
|
"method": "GET",
|
|
"path": "/v1/api/evidence/{evidenceId}/securelink",
|
|
"opId": "getevidenceurl",
|
|
"desc": "Gets a secure download URL of the evidence file, URL expires (default: 15min)",
|
|
"params": [
|
|
{
|
|
"name": "evidenceId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Evidence & M&E",
|
|
"method": "GET",
|
|
"path": "/v1/api/evidence/{projectId}",
|
|
"opId": "getprojectevidence",
|
|
"desc": "Get a list of all uploaded evidence metadata for a specific project",
|
|
"params": [
|
|
{
|
|
"name": "projectId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Execution",
|
|
"method": "POST",
|
|
"path": "/v1/api/execution/disbursements",
|
|
"opId": "createdisbursement",
|
|
"desc": "Create a new disbursement schedule (M06)",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Execution",
|
|
"method": "GET",
|
|
"path": "/v1/api/execution/disbursements",
|
|
"opId": "getdisbursements",
|
|
"desc": "Get a list of disbursements",
|
|
"params": [
|
|
{
|
|
"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
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Execution",
|
|
"method": "PUT",
|
|
"path": "/v1/api/execution/disbursements",
|
|
"opId": "updatedisbursement",
|
|
"desc": "Update the details of a specific disbursement",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Execution",
|
|
"method": "GET",
|
|
"path": "/v1/api/execution/disbursements/{disbursementId}",
|
|
"opId": "getdisbursement",
|
|
"desc": "Get a specific disbursement",
|
|
"params": [
|
|
{
|
|
"name": "disbursementId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Execution",
|
|
"method": "POST",
|
|
"path": "/v1/api/execution/disbursements/{disbursementId}/approve",
|
|
"opId": "approvedisbursement",
|
|
"desc": "Approve disbursement and release payment (M06)",
|
|
"params": [
|
|
{
|
|
"name": "disbursementId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Execution",
|
|
"method": "POST",
|
|
"path": "/v1/api/execution/programmes/rules",
|
|
"opId": "getrules",
|
|
"desc": "Get a list of all programme rules",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Execution",
|
|
"method": "POST",
|
|
"path": "/v1/api/execution/risks",
|
|
"opId": "createrisk",
|
|
"desc": "Add risk to risk register (M09)",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Execution",
|
|
"method": "GET",
|
|
"path": "/v1/api/execution/risks",
|
|
"opId": "getrisks",
|
|
"desc": "Get a list of all risks",
|
|
"params": [
|
|
{
|
|
"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
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Execution",
|
|
"method": "PUT",
|
|
"path": "/v1/api/execution/risks",
|
|
"opId": "updaterisk",
|
|
"desc": "Update the details of a specific risk",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Execution",
|
|
"method": "GET",
|
|
"path": "/v1/api/execution/risks/{riskId}",
|
|
"opId": "getrisk",
|
|
"desc": "Get a specific risk",
|
|
"params": [
|
|
{
|
|
"name": "riskId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Execution",
|
|
"method": "POST",
|
|
"path": "/v1/api/execution/rules",
|
|
"opId": "createrule",
|
|
"desc": "Add rule against a programme",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Execution",
|
|
"method": "PUT",
|
|
"path": "/v1/api/execution/rules",
|
|
"opId": "updaterule",
|
|
"desc": "Update the details of a specific programme rule (supplied version auto-increment)",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Execution",
|
|
"method": "GET",
|
|
"path": "/v1/api/execution/rules/{ruleId}",
|
|
"opId": "getrule",
|
|
"desc": "Get a specific programme rule",
|
|
"params": [
|
|
{
|
|
"name": "ruleId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "POST",
|
|
"path": "/v1/api/governance/auditlog",
|
|
"opId": "getauditlogs",
|
|
"desc": "Retrieves audit logs based on pagination parameters",
|
|
"params": [],
|
|
"reqBody": {
|
|
"content": {
|
|
"application/json; version=1": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Pagination"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json; version=1": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/AuditLog"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "Unauthorized"
|
|
},
|
|
"400": {
|
|
"description": "Bad Request",
|
|
"content": {
|
|
"application/json; version=1": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ProblemDetails"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal Server Error",
|
|
"content": {
|
|
"application/json; version=1": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ProblemDetails"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "GET",
|
|
"path": "/v1/api/governance/dashboard",
|
|
"opId": "dashboard",
|
|
"desc": "Get executive portfolio dashboard metrics and KPIs",
|
|
"params": [],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "POST",
|
|
"path": "/v1/api/governance/instruments",
|
|
"opId": "createinstrument",
|
|
"desc": "Creates a new programme funding instrument",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "PUT",
|
|
"path": "/v1/api/governance/instruments",
|
|
"opId": "updateinstrument",
|
|
"desc": "Updates a programme funding instrument",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "GET",
|
|
"path": "/v1/api/governance/instruments/{programmeId}",
|
|
"opId": "getinstruments",
|
|
"desc": "Get all funding instruments",
|
|
"params": [
|
|
{
|
|
"name": "programmeId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "POST",
|
|
"path": "/v1/api/governance/organisations",
|
|
"opId": "createorganisation",
|
|
"desc": "Create a new organization profile",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "GET",
|
|
"path": "/v1/api/governance/organisations",
|
|
"opId": "getorganisations",
|
|
"desc": "Get a paginated directory of organizations",
|
|
"params": [
|
|
{
|
|
"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
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "PUT",
|
|
"path": "/v1/api/governance/organisations",
|
|
"opId": "updateorganisation",
|
|
"desc": "Update an existing organization profile",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "POST",
|
|
"path": "/v1/api/governance/organisations/portfolio",
|
|
"opId": "createportfolio",
|
|
"desc": "Create a new organization portfolio",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "PUT",
|
|
"path": "/v1/api/governance/organisations/portfolio",
|
|
"opId": "updateportfolio",
|
|
"desc": "Update an existing organization portfolio",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "POST",
|
|
"path": "/v1/api/governance/organisations/portfolios",
|
|
"opId": "getportfolios",
|
|
"desc": "Get all portfolios",
|
|
"params": [],
|
|
"reqBody": {
|
|
"content": {
|
|
"application/json; version=1": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Pagination"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json; version=1": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/Portfolio"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "Forbidden"
|
|
},
|
|
"401": {
|
|
"description": "Unauthorized"
|
|
},
|
|
"500": {
|
|
"description": "Internal Server Error",
|
|
"content": {
|
|
"application/json; version=1": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ProblemDetails"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "GET",
|
|
"path": "/v1/api/governance/organisations/{organisationId}",
|
|
"opId": "getorganisation",
|
|
"desc": "Get organization profile by ID",
|
|
"params": [
|
|
{
|
|
"name": "organisationId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "GET",
|
|
"path": "/v1/api/governance/organisations/{organisationId}/portfolio",
|
|
"opId": "getorganisationportfolios",
|
|
"desc": "Get all portfolios belonging to a specific organisation",
|
|
"params": [
|
|
{
|
|
"name": "organisationId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "GET",
|
|
"path": "/v1/api/governance/portfolios/{portfolioId}",
|
|
"opId": "getportfolio",
|
|
"desc": "Get a specific portfolios",
|
|
"params": [
|
|
{
|
|
"name": "portfolioId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "GET",
|
|
"path": "/v1/api/governance/portfolios/{portfolioId}/programmes",
|
|
"opId": "getportfolioprogrammes",
|
|
"desc": "Get a programme's portfolios",
|
|
"params": [
|
|
{
|
|
"name": "portfolioId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "GET",
|
|
"path": "/v1/api/governance/portfolios/{portfolioId}/value",
|
|
"opId": "getporfoliovalue",
|
|
"desc": "Calculates and returns a portfolio's total project's budget value",
|
|
"params": [
|
|
{
|
|
"name": "portfolioId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json; version=1": {
|
|
"schema": {
|
|
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
|
|
"type": [
|
|
"number",
|
|
"string"
|
|
],
|
|
"format": "double"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "Forbidden"
|
|
},
|
|
"401": {
|
|
"description": "Unauthorized"
|
|
},
|
|
"400": {
|
|
"description": "Bad Request",
|
|
"content": {
|
|
"application/json; version=1": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ProblemDetails"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal Server Error",
|
|
"content": {
|
|
"application/json; version=1": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ProblemDetails"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "GET",
|
|
"path": "/v1/api/governance/programmes/{portfolioId}",
|
|
"opId": "getprogrammes",
|
|
"desc": "Get all programmes",
|
|
"params": [
|
|
{
|
|
"name": "portfolioId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "GET",
|
|
"path": "/v1/api/governance/programmes/{programmeId}/value",
|
|
"opId": "getprogrammevalue",
|
|
"desc": "Calculates and returns a programme's total project budget value",
|
|
"params": [
|
|
{
|
|
"name": "programmeId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json; version=1": {
|
|
"schema": {
|
|
"pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
|
|
"type": [
|
|
"number",
|
|
"string"
|
|
],
|
|
"format": "double"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "Forbidden"
|
|
},
|
|
"401": {
|
|
"description": "Unauthorized"
|
|
},
|
|
"400": {
|
|
"description": "Bad Request",
|
|
"content": {
|
|
"application/json; version=1": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ProblemDetails"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal Server Error",
|
|
"content": {
|
|
"application/json; version=1": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ProblemDetails"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "POST",
|
|
"path": "/v1/api/governance/tenants",
|
|
"opId": "createtenant",
|
|
"desc": "Create a new tenant",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "GET",
|
|
"path": "/v1/api/governance/tenants",
|
|
"opId": "gettenantsretrieval",
|
|
"desc": "Gets system tenants",
|
|
"params": [],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "PUT",
|
|
"path": "/v1/api/governance/tenants",
|
|
"opId": "updatetenant",
|
|
"desc": "Updates a specific tenant",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "GET",
|
|
"path": "/v1/api/governance/tenants/{tenantId}",
|
|
"opId": "gettenants",
|
|
"desc": "Gets system tenants",
|
|
"params": [
|
|
{
|
|
"name": "tenantId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Grants",
|
|
"method": "POST",
|
|
"path": "/v1/api/grants/awards",
|
|
"opId": "createaward",
|
|
"desc": "Register an approved funding award (M01)",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Grants",
|
|
"method": "GET",
|
|
"path": "/v1/api/grants/awards",
|
|
"opId": "getawards",
|
|
"desc": "Get a list of awards",
|
|
"params": [
|
|
{
|
|
"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
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Grants",
|
|
"method": "GET",
|
|
"path": "/v1/api/grants/awards/{awardId}",
|
|
"opId": "getaward",
|
|
"desc": "Get award by ID",
|
|
"params": [
|
|
{
|
|
"name": "awardId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Grants",
|
|
"method": "POST",
|
|
"path": "/v1/api/grants/budgets",
|
|
"opId": "createbudget",
|
|
"desc": "Create a new budget line (M05)",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Grants",
|
|
"method": "GET",
|
|
"path": "/v1/api/grants/budgets",
|
|
"opId": "getbudgets",
|
|
"desc": "Get all budgets",
|
|
"params": [
|
|
{
|
|
"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
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Governance",
|
|
"method": "PUT",
|
|
"path": "/v1/api/grants/budgets",
|
|
"opId": "updatebudget",
|
|
"desc": "Updates a specific budget",
|
|
"params": [],
|
|
"reqBody": {
|
|
"content": {
|
|
"application/json; version=1": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdateBudgetRequest"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
},
|
|
"401": {
|
|
"description": "Unauthorized"
|
|
},
|
|
"400": {
|
|
"description": "Bad Request",
|
|
"content": {
|
|
"application/json; version=1": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ProblemDetails"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal Server Error",
|
|
"content": {
|
|
"application/json; version=1": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ProblemDetails"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Grants",
|
|
"method": "GET",
|
|
"path": "/v1/api/grants/budgets/{budgetId}",
|
|
"opId": "getbudget",
|
|
"desc": "Get budget by ID",
|
|
"params": [
|
|
{
|
|
"name": "budgetId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Grants",
|
|
"method": "POST",
|
|
"path": "/v1/api/grants/contracts",
|
|
"opId": "createcontract",
|
|
"desc": "Create a contract record from an approved award (M02)",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Grants",
|
|
"method": "GET",
|
|
"path": "/v1/api/grants/contracts",
|
|
"opId": "getcontracts",
|
|
"desc": "Get all contracts",
|
|
"params": [
|
|
{
|
|
"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
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Grants",
|
|
"method": "PUT",
|
|
"path": "/v1/api/grants/contracts",
|
|
"opId": "updatecontract",
|
|
"desc": "Updates a specific contract",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Grants",
|
|
"method": "POST",
|
|
"path": "/v1/api/grants/contracts/execute",
|
|
"opId": "executecontract",
|
|
"desc": "Execute the contract and lock the contractual version",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Grants",
|
|
"method": "GET",
|
|
"path": "/v1/api/grants/contracts/{contractId}",
|
|
"opId": "getcontract",
|
|
"desc": "Get contract by ID",
|
|
"params": [
|
|
{
|
|
"name": "contractId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Grants",
|
|
"method": "POST",
|
|
"path": "/v1/api/grants/contracts/{contractId}",
|
|
"opId": "uploadcontract",
|
|
"desc": "Uploads a contract file securely",
|
|
"params": [
|
|
{
|
|
"name": "contractId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Grants",
|
|
"method": "GET",
|
|
"path": "/v1/api/grants/contracts/{contractId}/securelink",
|
|
"opId": "getcontracturl",
|
|
"desc": "Gets a secure download URL, has expiry period (default 15min)",
|
|
"params": [
|
|
{
|
|
"name": "contractId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Users",
|
|
"method": "POST",
|
|
"path": "/v1/api/integration/sync",
|
|
"opId": "syncuser",
|
|
"desc": "Trigger integration and data synchronization in the background",
|
|
"params": [],
|
|
"reqBody": null,
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
},
|
|
"401": {
|
|
"description": "Unauthorized"
|
|
},
|
|
"500": {
|
|
"description": "Internal Server Error",
|
|
"content": {
|
|
"application/json; version=1": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ProblemDetails"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "POST",
|
|
"path": "/v1/api/projects",
|
|
"opId": "createproject",
|
|
"desc": "Create a new project (M04)",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects",
|
|
"opId": "getprojects",
|
|
"desc": "Get a list of projects",
|
|
"params": [
|
|
{
|
|
"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
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "PUT",
|
|
"path": "/v1/api/projects",
|
|
"opId": "updateproject",
|
|
"desc": "Update project details",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "POST",
|
|
"path": "/v1/api/projects/activities",
|
|
"opId": "createactivity",
|
|
"desc": "Add a new activity under project (M04)",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/activities/{activityId}",
|
|
"opId": "getactivity",
|
|
"desc": "Gets a specific activity by it's id",
|
|
"params": [
|
|
{
|
|
"name": "activityId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "POST",
|
|
"path": "/v1/api/projects/beneficiaries",
|
|
"opId": "createbeneficiary",
|
|
"desc": "Add a new project beneficiary",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "PUT",
|
|
"path": "/v1/api/projects/beneficiaries",
|
|
"opId": "updatebeneficiary",
|
|
"desc": "Update project beneficiary",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/beneficiaries/{beneficiaryId}",
|
|
"opId": "getbeneficiaries",
|
|
"desc": "Gets project beneficiaries",
|
|
"params": [
|
|
{
|
|
"name": "beneficiaryId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "POST",
|
|
"path": "/v1/api/projects/beneficiaris/outcomes",
|
|
"opId": "createoutcome",
|
|
"desc": "Add a new beneficiary outcome",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "POST",
|
|
"path": "/v1/api/projects/changerequests",
|
|
"opId": "createchangerequest",
|
|
"desc": "Create a new change request against an existing project",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "PUT",
|
|
"path": "/v1/api/projects/changerequests",
|
|
"opId": "updatechangerequest",
|
|
"desc": "Update a specific project change request",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/changerequests/{changeRequestId}",
|
|
"opId": "getchangerequest",
|
|
"desc": "Gets a specific project change request",
|
|
"params": [
|
|
{
|
|
"name": "changeRequestId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "POST",
|
|
"path": "/v1/api/projects/complianceitems",
|
|
"opId": "createcomplianceitem",
|
|
"desc": "Add a new beneficiary compliance item",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "PUT",
|
|
"path": "/v1/api/projects/complianceitems",
|
|
"opId": "updatecomplianceitem",
|
|
"desc": "Update a specific compliance item",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/complianceitems/{complianceItemId}",
|
|
"opId": "getcomplianceitem",
|
|
"desc": "Gets a specific project compliance item",
|
|
"params": [
|
|
{
|
|
"name": "complianceItemId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/complianceitems/{projectId}",
|
|
"opId": "getcomplianceitems",
|
|
"desc": "Gets project compliance items",
|
|
"params": [
|
|
{
|
|
"name": "projectId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/indicators/project/{projectId}",
|
|
"opId": "getprojectindicators",
|
|
"desc": "Get get a detailed list of project indicators",
|
|
"params": [
|
|
{
|
|
"name": "projectId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "POST",
|
|
"path": "/v1/api/projects/issues",
|
|
"opId": "createissue",
|
|
"desc": "Add a new project issue",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "PUT",
|
|
"path": "/v1/api/projects/issues",
|
|
"opId": "updateissue",
|
|
"desc": "Update a specific project issue",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/issues/{issueId}",
|
|
"opId": "getissue",
|
|
"desc": "Gets a specific project issue",
|
|
"params": [
|
|
{
|
|
"name": "issueId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "PUT",
|
|
"path": "/v1/api/projects/milestone",
|
|
"opId": "updatemilestone",
|
|
"desc": "Update project milestone details",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/milestones/{milestoneId}",
|
|
"opId": "getmilestone",
|
|
"desc": "Gets a specific milestone",
|
|
"params": [
|
|
{
|
|
"name": "milestoneId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/milestones/{page}/{pageSize}",
|
|
"opId": "getmilestones",
|
|
"desc": "Get a list of all milestones",
|
|
"params": [
|
|
{
|
|
"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
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "PUT",
|
|
"path": "/v1/api/projects/outcomes",
|
|
"opId": "updateoutcome",
|
|
"desc": "Update project beneficiary outcome",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/outcomes/{beneficiatyId}",
|
|
"opId": "getoutcomes",
|
|
"desc": "Gets project beneficiary outcomes",
|
|
"params": [
|
|
{
|
|
"name": "beneficiatyId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/outcomes/{outcomeId}",
|
|
"opId": "getoutcome",
|
|
"desc": "Gets a specific project outcome",
|
|
"params": [
|
|
{
|
|
"name": "outcomeId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "POST",
|
|
"path": "/v1/api/projects/programme",
|
|
"opId": "createprogramme",
|
|
"desc": "Create programme",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "PUT",
|
|
"path": "/v1/api/projects/programme",
|
|
"opId": "updateprogramme",
|
|
"desc": "Update existing programme",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/programme/{page}/{pageSize}",
|
|
"opId": "getprogrammesprojects",
|
|
"desc": "Get a list of all programmes",
|
|
"params": [
|
|
{
|
|
"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
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/programme/{programmeId}",
|
|
"opId": "getprogramme",
|
|
"desc": "Get specific programme",
|
|
"params": [
|
|
{
|
|
"name": "programmeId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "POST",
|
|
"path": "/v1/api/projects/sitevisits",
|
|
"opId": "createsitevisit",
|
|
"desc": "Add a new project site visit",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "PUT",
|
|
"path": "/v1/api/projects/sitevisits",
|
|
"opId": "updatesitevisit",
|
|
"desc": "Update project site visit",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/sitevisits/{siteVisitId}",
|
|
"opId": "getsitevisit",
|
|
"desc": "Gets project site visit",
|
|
"params": [
|
|
{
|
|
"name": "siteVisitId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "PUT",
|
|
"path": "/v1/api/projects/status",
|
|
"opId": "updateprojectstatus",
|
|
"desc": "Update project status (M04)",
|
|
"params": [],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/{programmeId}/programme",
|
|
"opId": "getprogrammeprojects",
|
|
"desc": "Get a list of all projects under a programme",
|
|
"params": [
|
|
{
|
|
"name": "programmeId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/{projectId}",
|
|
"opId": "getproject",
|
|
"desc": "Get project by ID",
|
|
"params": [
|
|
{
|
|
"name": "projectId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/{projectId}/activities",
|
|
"opId": "getactivities",
|
|
"desc": "Get a list of activities for a project",
|
|
"params": [
|
|
{
|
|
"name": "projectId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/{projectId}/beneficiaries",
|
|
"opId": "getbeneficiariesretrieval",
|
|
"desc": "Gets project beneficiaries",
|
|
"params": [
|
|
{
|
|
"name": "projectId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/{projectId}/changerequests",
|
|
"opId": "getchangerequests",
|
|
"desc": "Gets project change requests",
|
|
"params": [
|
|
{
|
|
"name": "projectId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/{projectId}/issues",
|
|
"opId": "getissues",
|
|
"desc": "Gets project issues",
|
|
"params": [
|
|
{
|
|
"name": "projectId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/{projectId}/milestones",
|
|
"opId": "getprojectmilestones",
|
|
"desc": "Get a list of milestones for a project",
|
|
"params": [
|
|
{
|
|
"name": "projectId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/{projectId}/risks",
|
|
"opId": "getprojectrisks",
|
|
"desc": "Get a list of risks for a project",
|
|
"params": [
|
|
{
|
|
"name": "projectId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Projects",
|
|
"method": "GET",
|
|
"path": "/v1/api/projects/{projectId}/sitevisits",
|
|
"opId": "getsitevisits",
|
|
"desc": "Gets project site visits",
|
|
"params": [
|
|
{
|
|
"name": "projectId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Users",
|
|
"method": "POST",
|
|
"path": "/v1/api/users/{page}/{pageSize}",
|
|
"opId": "getusers",
|
|
"desc": "Paginated, searchable directory of system users. Supports filtering by ActivityStatus, searching by Email, and sorting",
|
|
"params": [
|
|
{
|
|
"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
|
|
}
|
|
}
|
|
],
|
|
"reqBody": {
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Users",
|
|
"method": "GET",
|
|
"path": "/v1/api/users/{userId}",
|
|
"opId": "getuser",
|
|
"desc": "Gets the metadata of a single user.",
|
|
"params": [
|
|
{
|
|
"name": "userId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"tag": "Users",
|
|
"method": "GET",
|
|
"path": "/v1/api/users/{userId}/status/{status}",
|
|
"opId": "updateuserstatus",
|
|
"desc": "Changes the Activity status of the user in the system",
|
|
"params": [
|
|
{
|
|
"name": "userId",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "uuid"
|
|
}
|
|
},
|
|
{
|
|
"name": "status",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ActivityStatus"
|
|
}
|
|
}
|
|
],
|
|
"reqBody": null,
|
|
"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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
] |