---
openapi: "3.0.1"
info:
  title: "Portfolio Manager"
  description: "Welcome to the Portfolio Manager API Reference.\n\nThe Reporting API allows asset holders to query current and historical reports as needed.\n\nThe API is organized around the REST methodology, and it uses resource-oriented URLs and common HTTP response codes to indicate API errors.\n\nAll requests are authenticated using an `apikey` header.\n"
  version: "latest"
servers:
  - url: "https://figure.com"
tags:
  - name: "Loan Tape"
  - name: "Payment History"
paths:
  /portfolio/external/secure/api/v1/asset/types:
    get:
      tags:
        - "Loan Tape"
      summary: "Returns the distinct list of asset types for currently owned loans"
      parameters:
        - name: "apikey"
          in: "header"
          description: "Provided key used to access the application's api"
          schema:
            type: "string"
      responses:
        "200":
          description: "List of available asset types associated to your account"
          headers: {}
          content:
            application/json:
              schema:
                type: "array"
                xml: {}
                items:
                  type: "string"
      deprecated: false
  /portfolio/external/secure/api/v1/layouts/{assetType}:
    get:
      tags:
        - "Loan Tape"
      summary: "Returns the distinct list of available layouts for the given asset type"
      parameters:
        - name: "assetType"
          in: "path"
          schema:
            type: "string"
        - name: "apikey"
          in: "header"
          description: "Provided key used to access the application's api"
          schema:
            type: "string"
      responses:
        "200":
          description: "List of available layouts for the given asset type"
          headers: {}
          content:
            application/json:
              schema:
                type: "array"
                xml: {}
                items:
                  type: "string"
      deprecated: false
  /portfolio/external/secure/api/v1/download/owned/{assetType}/{layout}:
    get:
      tags:
        - "Loan Tape"
      summary: "Download the latest record of owned loan data by asset type and layout"
      parameters:
        - name: "assetType"
          in: "path"
          schema:
            type: "string"
        - name: "layout"
          in: "path"
          description: "CSV layout available for the provided asset type"
          schema:
            type: "string"
        - name: "apikey"
          in: "header"
          description: "Provided key used to access the application's api"
          schema:
            type: "string"
        - name: "fundingStatus"
          in: "query"
          description: "Filter for loans by funding status. Options are FUNDED, RECISSION, or ANY. Defaults to FUNDED."
          required: false
          schema:
            type: "string"
      responses:
        "200":
          description: "CSV record of owned loan data based on the specified asset type and layout"
          headers: {}
          content:
            text/plain:
              schema:
                type: "string"
                xml:
                  name: "String"
      deprecated: false
  /portfolio/external/secure/api/v1/download/owned/{assetType}/{layout}/{date}:
    get:
      tags:
        - "Loan Tape"
      summary: "Download CSV record of owned loan data by asset type, layout, and cutoff date"
      parameters:
        - name: "assetType"
          in: "path"
          schema:
            type: "string"
        - name: "layout"
          in: "path"
          description: "CSV layout available for the provided asset type"
          schema:
            type: "string"
        - name: "date"
          in: "path"
          description: "Cutoff date of requested tape"
          schema:
            type: "string"
            format: "date"
        - name: "apikey"
          in: "header"
          description: "Provided key used to access the application's api"
          schema:
            type: "string"
        - name: "fundingStatus"
          in: "query"
          description: "Filter for loans by funding status. Options are FUNDED, RECISSION, or ANY. Defaults to FUNDED."
          required: false
          schema:
            type: "boolean"
      responses:
        "200":
          description: "CSV record of owned loan data based on the specified asset type, layout, and cutoff date"
          headers: {}
          content:
            text/plain:
              schema:
                type: "string"
                xml:
                  name: "String"
      deprecated: false
  /portfolio/external/secure/api/v1/download/pledged/{assetType}/{layout}:
    get:
      tags:
        - "Loan Tape"
      summary: "Download the latest record of pledged loan data by asset type and layout"
      parameters:
        - name: "assetType"
          in: "path"
          schema:
            type: "string"
        - name: "layout"
          in: "path"
          description: "CSV layout available for the provided asset type"
          schema:
            type: "string"
        - name: "apikey"
          in: "header"
          description: "Provided key used to access the application's api"
          schema:
            type: "string"
        - name: "cutoffDate"
          in: "query"
          description: "Cutoff date for requested asset data"
          required: false
          schema:
            type: "string"
      responses:
        "200":
          description: "CSV record of pledged loan data based on the specified asset type and layout"
          headers: {}
          content:
            text/plain:
              schema:
                type: "string"
                xml:
                  name: "String"
      deprecated: false
  /portfolio/external/secure/api/v1/download/pledged/{assetType}/{layout}/{date}:
    get:
      tags:
        - "Loan Tape"
      summary: "Download CSV record of pledged loan data by asset type, layout, and cutoff date"
      parameters:
        - name: "assetType"
          in: "path"
          schema:
            type: "string"
        - name: "layout"
          in: "path"
          description: "CSV layout available for the provided asset type"
          schema:
            type: "string"
        - name: "date"
          in: "path"
          description: "Date in which assets were actively encumbered by a warehouse"
          schema:
            type: "string"
            format: "date"
        - name: "apikey"
          in: "header"
          description: "Provided key used to access the application's api"
          schema:
            type: "string"
        - name: "cutoffDate"
          in: "query"
          description: "Cutoff date for requested asset data"
          required: false
          schema:
            type: "string"
      responses:
        "200":
          description: "CSV record of pledged loan data based on the specified asset type, layout, and cutoff date"
          headers: {}
          content:
            text/plain:
              schema:
                type: "string"
                xml:
                  name: "String"
      deprecated: false
  /portfolio/external/secure/api/v1/download/owned/payment-history:
    get:
      tags:
        - "Payment History"
      summary: "Download the latest record of payments for owned loans"
      parameters:
        - name: "ownsPayments"
          in: "query"
          description: "Only show payments received during ownership of loan"
          required: false
          schema:
            type: "boolean"
        - name: "apikey"
          in: "header"
          description: "Provided key used to access the application's api"
          schema:
            type: "string"
      responses:
        "200":
          description: "CSV of payments for owned loans"
          headers: {}
          content:
            text/plain:
              schema:
                type: "string"
                xml:
                  name: "String"
      deprecated: false
  /portfolio/external/secure/api/v1/download/owned/payment-history/{assetType}/{reportDate}:
    get:
      tags:
        - "Payment History"
      summary: "Download the record of payments for owned loans by asset type and report date"
      parameters:
        - name: "assetType"
          in: "path"
          schema:
            type: "string"
        - name: "reportDate"
          in: "path"
          description: "Cutoff date of requested payment history"
          schema:
            type: "string"
            format: "date"
        - name: "ownsPayments"
          in: "query"
          description: "Only show payments received during ownership of loan"
          required: false
          schema:
            type: "boolean"
        - name: "apikey"
          in: "header"
          description: "Provided key used to access the application's api"
          schema:
            type: "string"
      responses:
        "200":
          description: "CSV of payments for owned loans by asset type and report date"
          headers: {}
          content:
            text/plain:
              schema:
                type: "string"
                xml:
                  name: "String"
      deprecated: false
  /portfolio/external/secure/api/v1/download/owned/payment-history/{assetType}/{reportStartDate}/{reportEndDate}:
    get:
      tags:
        - "Payment History"
      summary: "Download the record of payments for owned loans by asset type between report start date and end date"
      parameters:
        - name: "assetType"
          in: "path"
          schema:
            type: "string"
        - name: "reportStartDate"
          in: "path"
          description: "Start cutoff date of requested payment history"
          schema:
            type: "string"
            format: "date"
        - name: "reportEndDate"
          in: "path"
          description: "End cutoff date of requested payment history"
          schema:
            type: "string"
            format: "date"
        - name: "ownsPayments"
          in: "query"
          description: "Only show payments received during ownership of loan"
          required: false
          schema:
            type: "boolean"
        - name: "apikey"
          in: "header"
          description: "Provided key used to access the application's api"
          schema:
            type: "string"
      responses:
        "200":
          description: "CSV of payments for owned loans by asset type between report start date and end date"
          headers: {}
          content:
            text/plain:
              schema:
                type: "string"
                xml:
                  name: "String"
      deprecated: false
  /portfolio/external/secure/api/v2/asset/types:
    get:
      tags:
        - "Loan Tape"
      summary: "Returns the distinct list of asset types and groups for currently owned loans"
      parameters:
        - name: "apikey"
          in: "header"
          description: "Provided key used to access the application's api"
          schema:
            type: "string"
      responses:
        "200":
          description: "List of available asset types associated with this account"
          headers: {}
          content:
            application/json:
              schema:
                type: "array"
                xml: {}
                items:
                  type: "string"
      deprecated: false
  /portfolio/external/secure/api/v2/layouts:
    get:
      tags:
        - "Loan Tape"
      summary: "Returns the distinct list of available layouts for the given asset type"
      parameters:
        - name: "apikey"
          in: "header"
          description: "Provided key used to access the application's api"
          schema:
            type: "string"
        - name: "assetType"
          in: "query"
          description: "Asset type to fetch compatible layouts for. Must provide originatorId if using"
          required: false
          schema:
            type: "string"
        - name: "originatorId"
          in: "query"
          description: "Originator id to fetch compatible layouts for. Must provide if using assetType query param"
          required: false
          schema:
            type: "string"
            format: "uuid"
        - name: "assetGroup"
          in: "query"
          description: "Name of asset group to fetch compatible layouts for"
          required: false
          schema:
            type: "string"
      responses:
        "200":
          description: "List of available layouts for the given asset type"
          headers: {}
          content:
            application/json:
              schema:
                type: "array"
                xml: {}
                items:
                  type: "string"
      deprecated: false
  /portfolio/external/secure/api/v2/download/owned/{layout}:
    get:
      tags:
        - "Loan Tape"
      summary: "Download the latest record of owned loan data by asset type and layout"
      parameters:
        - name: "layout"
          in: "path"
          description: "CSV layout available for the provided asset type"
          schema:
            type: "string"
        - name: "assetType"
          in: "query"
          description: "Asset type to query assets for. Must provide originatorId if using"
          required: false
          schema:
            type: "string"
        - name: "originatorId"
          in: "query"
          description: "Originator id to query assets for. Must provide assetType if using assetType query param"
          required: false
          schema:
            type: "string"
            format: "uuid"
        - name: "assetGroup"
          in: "query"
          description: "Name of asset group to filter assets with"
          required: false
          schema:
            type: "string"
        - name: "apikey"
          in: "header"
          description: "Provided key used to access the application's api"
          schema:
            type: "string"
      responses:
        "200":
          description: "CSV record of owned loan data based on the specified asset type and layout"
          headers: {}
          content:
            text/plain:
              schema:
                type: "string"
                xml:
                  name: "String"
      deprecated: false
  /portfolio/external/secure/api/v2/download/owned/payment-history:
    get:
      tags:
        - "Payment History"
      summary: "Download the record of payments for owned loans by asset type and report date"
      parameters:
        - name: "assetType"
          in: "query"
          description: "Asset type to query assets for. Must provide originatorId if using"
          required: false
          schema:
            type: "string"
        - name: "originatorId"
          in: "query"
          description: "Originator id to query assets for. Must provide assetType if using assetType query param"
          required: false
          schema:
            type: "string"
            format: "uuid"
        - name: "assetGroup"
          in: "query"
          description: "Name of asset group to filter assets with"
          required: false
          schema:
            type: "string"
        - name: "reportDate"
          in: "query"
          description: "Cutoff date of requested payment history"
          required: false
          schema:
            type: "string"
            format: "date"
        - name: "ownsPayments"
          in: "query"
          description: "Only show payments received during ownership of loan"
          required: false
          schema:
            type: "boolean"
        - name: "apikey"
          in: "header"
          description: "Provided key used to access the application's api"
          schema:
            type: "string"
      responses:
        "200":
          description: "CSV of payments for owned loans by asset type and report date"
          headers: {}
          content:
            text/plain:
              schema:
                type: "string"
                xml:
                  name: "String"
      deprecated: false
components:
  schemas: {}
  examples: {}
