Skip to content
Snippets Groups Projects
workday-funding.json-Swagger20.json 7.57 KiB
Newer Older
Jared Balkman's avatar
Jared Balkman committed
{
  "swagger": "2.0",
  "info": {
    "version": "1.0.0",
    "title": "funding",
    "description": "A implementation of the Funding API. It is used to verify the funding used in Workday.",
    "contact": {
      "email": "asp-integrations-api-team@g-groups.wisc.edu",
      "name": "DoIT ASP Integration API Team"
    }
  },
  "host": "mock.dev.api.wisc.edu",
  "basePath": "/",
  "securityDefinitions": {},
  "schemes": [
    "https"
  ],
  "consumes": [
    "application/json"
  ],
  "produces": [
    "application/json"
  ],
  "paths": {
    "/funding/validate-funding": {
      "post": {
        "description": "Send in WorkDay funding and get back if it is valid.",
        "summary": "FundingValidateFunding_POST",
        "tags": [
          "WorkDay Funding"
        ],
        "operationId": "FundingValidateFunding_POST",
        "deprecated": false,
        "produces": [
          "application/json"
        ],
        "consumes": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "Content-Type",
            "in": "header",
            "required": false,
            "enum": [
              "application/json"
            ],
            "type": "string",
            "description": ""
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "description": "A journal request body.",
            "schema": {
              "$ref": "#/definitions/journal"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK.  Validation completed successfully.",
            "schema": {
              "$ref": "#/definitions/results"
            },
            "headers": {}
          },
          "400": {
            "description": "Bad Request.",
            "schema": {
              "$ref": "#/definitions/FundingValidateFunding400Error1"
            },
            "examples": {
              "application/json": {
                "errors": [
                  {
                    "status": 400,
                    "title": "Bad Request",
                    "detail": "You supplied data that could not be processed. See response body for more detail."
                  }
                ]
              }
            },
            "headers": {}
          },
          "503": {
            "description": "Service Unavailable.",
            "schema": {
              "$ref": "#/definitions/FundingValidateFunding503Error1"
            },
            "examples": {
              "application/json": {
                "errors": [
                  {
                    "status": 503,
                    "title": "Service Unavailable",
                    "detail": "The Workday server did not respond.  Try again later."
                  }
                ]
              }
            },
            "headers": {}
          }
        }
      }
    }
  },
  "definitions": {
    "fundingAttributes": {
      "title": "fundingAttributes",
      "type": "object",
      "properties": {
        "company": {
          "example": "UWMSN",
          "type": "string",
          "minLength": 5,
          "maxLength": 5
        },
        "accountingDate": {
          "example": "2023-02-17",
          "type": "string",
          "format": "date"
        },
        "ledger": {
          "example": "ACTUALS",
          "type": "string",
          "default": "ACTUALS"
        },
        "lines": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Line"
          }
        }
      },
      "required": [
        "company"
      ]
    },
    "results": {
      "title": "results",
      "type": "object",
      "properties": {
        "data": {
          "$ref": "#/definitions/Data"
        }
      }
    },
    "errors": {
      "title": "errors",
      "type": "object",
      "properties": {
        "errors": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Errors1"
          }
        }
      }
    },
    "Attributes": {
      "title": "Attributes",
      "type": "object",
      "properties": {
        "valid": {
          "type": "boolean"
        },
        "journalErrors": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "lines": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Line1"
          }
        }
      }
    },
    "Data": {
      "title": "Data",
      "type": "object",
      "properties": {
        "lid": {
          "example": "1",
          "type": "string"
        },
        "type": {
          "example": "journals",
          "type": "string"
        },
        "attributes": {
          "$ref": "#/definitions/Attributes"
        }
      }
    },
    "Data1": {
      "title": "Data1",
      "type": "object",
      "properties": {
        "lid": {
          "example": "1",
          "type": "string"
        },
        "type": {
          "example": "journals",
          "type": "string"
        },
        "attributes": {
          "$ref": "#/definitions/fundingAttributes"
        }
      },
      "required": [
        "type",
        "attributes"
      ]
    },
    "Errors1": {
      "title": "Errors1",
      "description": "An error",
      "type": "object",
      "properties": {
        "status": {
          "type": "string"
        },
        "title": {
          "type": "string"
        },
        "detail": {
          "type": "string"
        }
      }
    },
    "FundingValidateFunding400Error1": {
      "title": "FundingValidateFunding400Error1",
      "type": "object",
      "properties": {
        "errors": {
          "type": "array",
          "items": {}
        },
        "items": {
          "$ref": "#/definitions/errors"
        }
      }
    },
    "FundingValidateFunding503Error1": {
      "title": "FundingValidateFunding503Error1",
      "type": "object",
      "properties": {
        "errors": {
          "type": "array",
          "items": {}
        },
        "items": {
          "$ref": "#/definitions/errors"
        }
      }
    },
    "journal": {
      "title": "journal",
      "type": "object",
      "properties": {
        "data": {
          "$ref": "#/definitions/Data1"
        }
      }
    },
    "Line": {
      "title": "Line",
      "type": "object",
      "properties": {
        "costCenter": {
          "example": "CC000127",
          "type": "string"
        },
        "fund": {
          "example": "FD0102",
          "type": "string"
        },
        "functionId": {
          "example": "FN0500",
          "type": "string"
        },
        "ledgerAccount": {
          "example": "6015",
          "type": "string"
        },
        "projectType": {
          "$ref": "#/definitions/ProjectType"
        },
        "project": {
          "example": "20493043",
          "type": "string"
        },
        "program": {
          "example": "PG000005076",
          "type": "string"
        },
        "spendCategory": {
          "example": "SC00244",
          "type": "string"
        }
      },
      "required": [
        "costCenter"
      ]
    },
    "Line1": {
      "title": "Line1",
      "type": "object",
      "properties": {
        "valid": {
          "type": "boolean"
        },
        "errors": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "ProjectType": {
      "title": "ProjectType",
      "type": "string",
      "enum": [
        "GIFT",
        "GRANT",
        "NONE",
        "PROJECT"
      ]
    }
  },
  "tags": [
    {
      "name": "WorkDay Funding",
      "description": ""
    }
  ]
}