Financial Modeling Copilot

Financial Modeling Copilot · GPT-Aktionen

Tailored DCF Generator

Based on given parameters, retrieves financial data and generate DCF Model with link and brief summary. Domain is https://www.financialmodeling.tech

  • POST /generate_dcf_excelGenerate DCF model and reply with link and brief summary of the model result.

    Generate DCF Excel data based on specified criteria.

  • POST /add_breakdownAdd breakdown based on existing DCF file.

    This endpoint validates breakdown data against specific criteria.

Ursprüngliches API-Schema
{
  "openapi": "3.1.0",
  "info": {
    "title": "Tailored DCF Generator",
    "description": "Based on given parameters, retrieves financial data and generate DCF Model with link and brief summary. Domain is https://www.financialmodeling.tech",
    "version": "v1.0.0"
  },
  "servers": [
    {
      "url": "https://www.financialmodeling.tech"
    }
  ],
  "paths": {
    "/generate_dcf_excel": {
      "post": {
        "summary": "Generate DCF model and reply with link and brief summary of the model result.",
        "description": "Generate DCF Excel data based on specified criteria.",
        "operationId": "GenerateDCFExcel",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "ticker": {
                    "type": "string",
                    "description": "The stock ticker symbol for the company to be analyzed. must input."
                  },
                  "historic_periods": {
                    "type": "integer",
                    "minimum": 2,
                    "description": "Optional, default 3. Number of past periods to include in the analysis, at least 2."
                  },
                  "estimated_periods": {
                    "type": "integer",
                    "minimum": 2,
                    "description": "Optional, default 5. Number of future periods to estimate in the analysis, at least 2."
                  }
                },
                "required": [
                  "ticker"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "A URL to download the Excel file",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/add_breakdown": {
      "post": {
        "summary": "Add breakdown based on existing DCF file.",
        "description": "This endpoint validates breakdown data against specific criteria.",
        "operationId": "AddBreakdown",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "file_name": {
                    "type": "string",
                    "description": "Name of the file containing financial data."
                  },
                  "breakdowns": {
                    "oneOf": [
                      {
                        "type": "string",
                        "enum": [
                          "Revenue by Segment from DataBase"
                        ]
                      },
                      {
                        "type": "array",
                        "description": "An array of breakdown objects.",
                        "items": {
                          "type": "object",
                          "properties": {
                            "target": {
                              "type": "string",
                              "description": "Target row name in the Financial Statements, such as [Revenue, CostOfRevenue, etc.]",
                              "example": "Revenue"
                            },
                            "function_between_elements": {
                              "type": "string",
                              "enum": [
                                "plus",
                                "multiply"
                              ],
                              "description": "Function to be applied between elements in values."
                            },
                            "values": {
                              "type": "object",
                              "additionalProperties": {
                                "description": "key is timeframe, such as FY2023. value is a dictionary of elements and corresponding values.",
                                "type": "object",
                                "additionalProperties": {
                                  "type": "number",
                                  "description": "Value of the element. If the value is 100M, then the value should be 100000000."
                                }
                              },
                              "description": "Dictionary of time frames and corresponding values.",
                              "example": {
                                "target": "Revenue",
                                "function_between_elements": "plus",
                                "values": {
                                  "FY2023": {
                                    "Mac": 29357000000,
                                    "Service": 85200000000,
                                    "Wearables, Home and Accessories": 45000000,
                                    "iPad": 28300000000,
                                    "iPhone": 200583000000
                                  },
                                  "FY2022": {
                                    "Mac": 40177000000,
                                    "Service": 78129000000,
                                    "Wearables, Home and Accessories": 41241000000,
                                    "iPad": 29292000000,
                                    "iPhone": 205489000000
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    ]
                  }
                },
                "required": [
                  "file_name",
                  "breakdowns"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "A URL to download updated Excel file with breakdown",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    }
  }
}