openapi: 3.0.2 info: title: Automated Spreading and Analysis Api-Key Loans API version: 1.3.1 description: "This [REST API](https://en.wikipedia.org/wiki/Representational_state_transfer) allows you to interact with the Automated Spreading processing and insights engine. \n\n# Authentication\n\nThis API uses API keys generated from a Automated Spreading User account. To get access to your User account, speak with your Automated Spreading account manager.\n\n# Accepted Media Types\n\n| File Type      | Extension(s) | Content-Type(s) |\n| -------------------------------- |-------------- | ------------ |\n| PDF File | .pdf | `application/pdf` , `application/x-pdf` |\n| Excel File | .xls | `application/vnd.ms-excel` |\n| Excel File | .xlsx | `application/vnd.openxmlformats-officedocument.spreadsheetml.sheet` |\n| Excel File | .xlsm | `application/vnd.ms-excel.sheet.macroEnabled.12` |\n| PNG Image | .png | `image/png` |\n| GIF Image | .gif | `image/gif` |\n| JPG Image | .jpg, .jpeg | `image/jpeg` |\n| GIF Image | .gif | `image/gif` |\n| JSON File | .json | `application/json` |\n\n\n# Getting Started\n\n1. [Create a Borrower](#operation/createBorrower) \n2. [Add a file](#operation/createDocumentFile) for that Borrower.\n3. Analyze in the Automated Spreading App\n\n****" x-logo: url: https://manual-public-web-static-resources.s3.amazonaws.com/public-api/Moodys-icon.svg contact: name: Moody's Automated Spreading Customer Support email: MA_NMR_Support@moodys.com security: - API_Key: [] tags: - name: Loans description: A Borrower loan record in our system. paths: /v1/loan: get: operationId: listLoans description: List Loan records parameters: - name: limit required: false in: query description: Number of results to return per page. schema: type: integer - name: offset required: false in: query description: The initial index from which to return the results. schema: type: integer - name: borrower_uuid required: false in: query description: Borrower to filter results for schema: type: string - name: search required: false in: query description: A search term. schema: type: string responses: '200': content: application/json: schema: type: object required: - count - results properties: count: type: integer example: 123 next: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=400&limit=100 previous: type: string nullable: true format: uri example: http://api.example.org/accounts/?offset=200&limit=100 results: type: array items: $ref: '#/components/schemas/Loan' description: '' tags: - Loans summary: List Loans post: operationId: createLoan description: Create a new Loan record parameters: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/Loan' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Loan' multipart/form-data: schema: $ref: '#/components/schemas/Loan' responses: '201': content: application/json: schema: $ref: '#/components/schemas/Loan' description: '' tags: - Loans summary: Create a new Loan /v1/loan/{uuid}: get: operationId: retrieveLoan description: Retrieve a Loan parameters: - name: uuid in: path required: true description: '' schema: type: string - name: borrower_uuid required: false in: query description: Borrower to filter results for schema: type: string - name: search required: false in: query description: A search term. schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/Loan' description: '' tags: - Loans summary: Retrieve a Loan patch: operationId: partialUpdateLoan description: '' parameters: - name: uuid in: path required: true description: '' schema: type: string - name: borrower_uuid required: false in: query description: Borrower to filter results for schema: type: string - name: search required: false in: query description: A search term. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Loan' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Loan' multipart/form-data: schema: $ref: '#/components/schemas/Loan' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Loan' description: '' tags: - Loans summary: Update a Loan delete: operationId: destroyLoan description: Delete a loan from Fincura. parameters: - name: uuid in: path required: true description: '' schema: type: string - name: borrower_uuid required: false in: query description: Borrower to filter results for schema: type: string - name: search required: false in: query description: A search term. schema: type: string responses: '204': description: '' tags: - Loans summary: Delete a Loan components: schemas: Loan: type: object properties: uuid: type: string format: uuid readOnly: true title: type: string description: Title of the Loan. Must be unique for the Borrower maxLength: 200 description: type: string nullable: true created_date: type: string format: date-time readOnly: true external_id: type: string nullable: true description: External ID is used to uniquely identify a record from your system in our system. Must be unique across records. maxLength: 250 loan_id: type: string nullable: true maxLength: 250 contract_type: enum: - LEASE - LOAN - NOT_APPLICABLE type: string borrower_uuid: type: string format: uuid description: UUID of the borrower for this loan. (see [Borrowers](#tag/Borrowers)) borrower_info: type: object properties: name: type: string maxLength: 500 industry: enum: - UNKNOWN - AGRICULTURE_FORESTRY_FISHING - CONSTRUCTION - MINING - TRANSPORTATION_AND_PUBLIC_UTILITIES - WHOLESALE_TRADE - RETAIL_TRADE - MANUFACTURING - FINANCE_INSURANCE_REAL_ESTATE - SERVICES - PUBLIC_ADMINISTRATION type: string naics_code: type: integer maximum: 999999 nullable: true minimum: 0 address: type: string nullable: true city: type: string nullable: true maxLength: 255 state: type: string nullable: true maxLength: 50 zipcode: type: string nullable: true maxLength: 20 country: type: string nullable: true maxLength: 255 email: type: string format: email nullable: true maxLength: 254 company_notes: type: string nullable: true dun_bradstreet_score: type: integer maximum: 100 nullable: true minimum: 0 paynet_score: type: string nullable: true maxLength: 50 required: - name description: Borrower information specific to this loan (does not update the underlying Borrower) principal: type: number multipleOf: 0.01 maximum: 1000000000000000000 minimum: 0 description: Original principal value interest_rate: type: number multipleOf: 0.0001 maximum: 100 minimum: 0 interest_type: enum: - FIXED - ADJUSTABLE type: string term_months: type: integer payment_type: enum: - PRINCIPAL_AND_INTEREST - PRINCIPAL_PLUS_INTEREST - IO_PERIOD type: string state: enum: - PROPOSED - APPROVED - DECLINED - ACTIVE - PAID_OFF - DESISTED type: string payment_status: enum: - CURRENT - GRACE_PERIOD - DELINQUENT type: string start_date: type: string format: date nullable: true end_date: type: string format: date readOnly: true description: Loan end date. Calculated field monthly_payment: type: number multipleOf: 0.01 maximum: 1000000000000000000 minimum: -1000000000000000000 readOnly: true description: calculated field payments_remaining: type: integer readOnly: true description: Calculated field outstanding_principal: type: number multipleOf: 0.01 maximum: 1000000000000000000 minimum: -1000000000000000000 readOnly: true description: calculated field interest_accrued: type: number multipleOf: 0.01 maximum: 1000000000000000000 minimum: -1000000000000000000 readOnly: true description: calculated field loan_to_value: type: number multipleOf: 0.01 maximum: 10000 minimum: -10000 readOnly: true description: calculated field scorecard: enum: - PASSED - FAILED - NOT_APPLICABLE type: string nullable: true collateral_type: enum: - NONE - CASH - AR - IP - REAL_ESTATE - EQUIPMENT type: string collateral_value: type: number multipleOf: 0.01 maximum: 1000000000000000000 minimum: 0 nullable: true collateral_life_months: type: integer description: The life of the collateral in months residual_value: type: number multipleOf: 0.01 maximum: 1000000000000000000 minimum: 0 nullable: true balloon_payment: type: number multipleOf: 0.01 maximum: 1000000000000000000 minimum: 0 nullable: true last_payment_date: type: string format: date nullable: true compliance_info: type: object properties: ofac_sanctions: type: boolean pacer_bankruptcies: type: boolean state_court_claims: type: boolean divisions_of_corp_report: type: boolean description: Compliance information for this loan and borrower template_uuid: type: string format: uuid writeOnly: true description: DSRC template to use for finanical information periods: type: array items: type: object properties: reporting_period: type: string maxLength: 200 preparation_type: type: string maxLength: 200 required: - reporting_period - preparation_type writeOnly: true description: ReportingPeriod's to include in the loan financial information documents: type: array items: type: object properties: uuid: type: string format: uuid status: type: string readOnly: true created_date: type: string format: date-time readOnly: true filename: type: string readOnly: true maxLength: 200 statement_types: type: array items: {} readOnly: true default: - OTHER custom_attributes: type: object readOnly: true description: Additional DocumentFile's to be included with loan information financials: type: object properties: data_overrides: type: array items: type: array items: type: string template_items: type: array items: type: object properties: ref: type: string readOnly: true label: type: string readOnly: true item_type: type: string readOnly: true text_format: enum: - NUMBER - PERCENT - DAYS - RATIO type: string readOnly: true original_equation: type: string readOnly: true equation_override: type: string readOnly: true line_item_id: type: integer readOnly: true display_bold: type: boolean readOnly: true num_decimals: type: integer readOnly: true readOnly: true data_columns: type: array items: type: object properties: header: type: string readOnly: true statement_date: type: string format: date readOnly: true reporting_period: type: string readOnly: true preparation_type: type: string readOnly: true months_in_interval: type: integer readOnly: true reporting_interval: type: string readOnly: true prepared_by: type: string readOnly: true cells: type: array items: type: object properties: line_item_id: type: integer readOnly: true ref: type: string readOnly: true calculated_value: type: object properties: value: type: number multipleOf: 0.01 maximum: 1000000000000000000 minimum: -1000000000000000000 readOnly: true readOnly: true readOnly: true readOnly: true required: - data_overrides analysis_commentary: type: string nullable: true guarantors: type: array items: type: object properties: first_name: type: string maxLength: 255 last_name: type: string maxLength: 255 credit_score: type: string maxLength: 255 credit_score_source: type: string description: Reporting agency for credit score maxLength: 255 required: - first_name - last_name prior_year_financials: type: object properties: statement_date: type: string format: date readOnly: true preparation_type: type: string readOnly: true net_income: type: number multipleOf: 0.01 maximum: 1000000000000000000 minimum: -1000000000000000000 readOnly: true readOnly: true custom_attributes: type: object required: - title - borrower_uuid - borrower_info - principal - term_months securitySchemes: API_Key: type: http scheme: bearer bearerFormat: JWT x-tagGroups: - name: Tenant tags: - Api-Key - TenantSettings - name: Templates tags: - SpreadingTemplate - DscrTemplate - GlobalCashflowTemplate - name: Borrower tags: - Borrowers - Files - Loans - Requirements - Portfolios - name: Normalized Data tags: - DataViews - Templates - name: Analysis tags: - DscrAnalysis - GlobalCashflowAnalysis - name: Events tags: - Webhooks - name: Embedded UI tags: - EmbeddedDocument - EmbeddedFinancials - EmbeddedDscrAnalysis - EmbeddedGlobalCashflowAnalysis