openapi.yml (547 lines of code) (raw):

openapi: 3.0.3 info: title: Fineract Credit Scorecard version: 0.1.0-SNAPSHOT description: An API module for credit risk assessment license: name: Apache-2.0 url: https://www.apache.org/licenses/LICENSE-2.0.html paths: /api/v1/algorithms: get: operationId: algorithms_list description: '' tags: - algorithms security: - {} responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Algorithm' description: '' post: operationId: algorithms_create description: '' tags: - algorithms requestBody: content: application/json: schema: $ref: '#/components/schemas/Algorithm' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Algorithm' multipart/form-data: schema: $ref: '#/components/schemas/Algorithm' required: true security: - {} responses: '201': content: application/json: schema: $ref: '#/components/schemas/Algorithm' description: '' /api/v1/algorithms/{id}: get: operationId: algorithms_retrieve description: '' parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this algorithm. required: true tags: - algorithms security: - {} responses: '200': content: application/json: schema: $ref: '#/components/schemas/Algorithm' description: '' put: operationId: algorithms_update description: '' parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this algorithm. required: true tags: - algorithms requestBody: content: application/json: schema: $ref: '#/components/schemas/Algorithm' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Algorithm' multipart/form-data: schema: $ref: '#/components/schemas/Algorithm' required: true security: - {} responses: '200': content: application/json: schema: $ref: '#/components/schemas/Algorithm' description: '' patch: operationId: algorithms_partial_update description: '' parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this algorithm. required: true tags: - algorithms requestBody: content: application/json: schema: $ref: '#/components/schemas/Algorithm' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Algorithm' multipart/form-data: schema: $ref: '#/components/schemas/Algorithm' required: true security: - {} responses: '200': content: application/json: schema: $ref: '#/components/schemas/Algorithm' description: '' delete: operationId: algorithms_destroy description: '' parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this algorithm. required: true tags: - algorithms security: - {} responses: '204': description: No response body /api/v1/algorithms/predict: post: operationId: algorithms_predict description: Predict credit risk for a loan parameters: - in: query name: classifier schema: type: string description: The algorithm/classifier to use required: true examples: Example1: value: RandomForestClassifier summary: Example 1 - in: query name: dataset schema: type: string description: The name of the dataset examples: Example1: value: german summary: Example 1 - in: query name: status schema: type: string description: The status of the algorithm deprecated: true examples: Example1: value: production summary: Example 1 - in: query name: version schema: type: string default: 0.0.1 description: Algorithm version required: true examples: Example1: value: 0.0.1 summary: Example 1 tags: - algorithms requestBody: content: application/json: schema: type: object additionalProperties: {} description: Unspecified request body application/x-www-form-urlencoded: schema: type: object additionalProperties: {} description: Unspecified request body multipart/form-data: schema: type: object additionalProperties: {} description: Unspecified request body security: - {} responses: '200': content: application/json: schema: $ref: '#/components/schemas/PredictionResponse' description: '' /api/v1/datasets: get: operationId: datasets_list description: '' tags: - datasets security: - {} responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Dataset' description: '' /api/v1/datasets/{id}: get: operationId: datasets_retrieve description: '' parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this dataset. required: true tags: - datasets security: - {} responses: '200': content: application/json: schema: $ref: '#/components/schemas/Dataset' description: '' /api/v1/requests: get: operationId: requests_list description: '' tags: - requests security: - {} responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/PredictionRequest' description: '' post: operationId: requests_create description: '' tags: - requests requestBody: content: application/json: schema: $ref: '#/components/schemas/PredictionRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PredictionRequest' multipart/form-data: schema: $ref: '#/components/schemas/PredictionRequest' required: true security: - {} responses: '201': content: application/json: schema: $ref: '#/components/schemas/PredictionRequest' description: '' /api/v1/requests/{id}: get: operationId: requests_retrieve description: '' parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this prediction request. required: true tags: - requests security: - {} responses: '200': content: application/json: schema: $ref: '#/components/schemas/PredictionRequest' description: '' put: operationId: requests_update description: '' parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this prediction request. required: true tags: - requests requestBody: content: application/json: schema: $ref: '#/components/schemas/PredictionRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PredictionRequest' multipart/form-data: schema: $ref: '#/components/schemas/PredictionRequest' required: true security: - {} responses: '200': content: application/json: schema: $ref: '#/components/schemas/PredictionRequest' description: '' patch: operationId: requests_partial_update description: '' parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this prediction request. required: true tags: - requests requestBody: content: application/json: schema: $ref: '#/components/schemas/PredictionRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PredictionRequest' multipart/form-data: schema: $ref: '#/components/schemas/PredictionRequest' required: true security: - {} responses: '200': content: application/json: schema: $ref: '#/components/schemas/PredictionRequest' description: '' delete: operationId: requests_destroy description: '' parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this prediction request. required: true tags: - requests security: - {} responses: '204': description: No response body components: schemas: Algorithm: type: object properties: id: type: integer readOnly: true classifier: type: string maxLength: 128 description: type: string nullable: true version: type: string maxLength: 128 status: type: string maxLength: 128 created_at: type: string format: date-time readOnly: true created_by: type: string maxLength: 128 dataset: type: string nullable: true required: - classifier - created_at - created_by - id - status - version Dataset: type: object properties: id: type: integer readOnly: true name: type: string maxLength: 128 region: type: string maxLength: 128 required: - id - name - region PredictionRequest: type: object properties: id: type: integer readOnly: true input: type: object additionalProperties: {} response: type: object additionalProperties: {} prediction: type: string maxLength: 128 feedback: type: string nullable: true maxLength: 128 notes: type: string nullable: true created_at: type: string format: date-time readOnly: true created_by: type: string maxLength: 128 algorithm: type: integer required: - created_at - created_by - id - input - prediction - response PredictionResponse: type: object properties: probability: type: number format: float label: type: string method: type: string color: type: string wilkis_lambda: type: number format: float pillais_trace: type: number format: float hotelling_tawley: type: number format: float roys_reatest_roots: type: number format: float request_id: type: integer required: - color - hotelling_tawley - label - method - pillais_trace - probability - request_id - roys_reatest_roots - wilkis_lambda servers: - url: http://127.0.0.1:8000 description: server on localhost