{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/quickbooks/json-schema/quickbooks-profitandlossdetailquery-schema.json",
  "title": "profitandlossdetailquery",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/quickbooks-profitandlossdetail-api-openapi.yml#/components/schemas/profitandlossdetailquery",
  "type": "object",
  "properties": {
    "customer": {
      "type": "string",
      "description": "Filters report contents to include information for specified customers.\nSupported Values: One or more comma separated customer IDs as returned in the attribute, Customer.Id, of the Customer object response code.",
      "x-intuit-required": "Optional",
      "x-intuit-default": "Include data for all customers"
    },
    "account": {
      "type": "string",
      "description": "(source_account_type) Filters report contents to include information for specified accounts. \nSupported Values: One or more comma separated account IDs as returned in the attribute, Account.Id, of the Account object response code.",
      "x-intuit-required": "Optional",
      "x-intuit-default": "Data for all account types"
    },
    "accounting_method": {
      "type": "string",
      "description": "The accounting method used in the report. Supported Values:Cash, Accrual",
      "x-intuit-required": "Optional",
      "x-intuit-default": "Method defined in prefrences by the <span class=\"literal\">Preferences.ReportPrefs.ReportBasis</span> attribute"
    },
    "end_date": {
      "type": "string",
      "description": "The end date of the report, in the format YYYY-MM-DD. start_date must be less than end_date. Use if you want the report to cover an explicit date range; otherwise, use date_macro to cover a standard report date range. If not specified value of date_macro is used",
      "x-intuit-required": "Optional"
    },
    "date_macro": {
      "type": "string",
      "description": "Predefined date range. Use if you want the report to cover a standard report date range; otherwise, use the start_date and end_date to cover an explicit report date range.\nSupported Values: Today, Yesterday, This Week, Last Week, This Week-to-date, Last Week-to-date, Next Week, Next 4 Weeks, This Month, Last Month, This Month-to-date, Last Month-to-date, Next Month, This Fiscal Quarter, Last Fiscal Quarter, This Fiscal Quarter-to-date, Last Fiscal Quarter-to-date, Next Fiscal Quarter, This Fiscal Year, Last Fiscal Year, This Fiscal Year-to-date, Last Fiscal Year-to-date, Next Fiscal Year",
      "x-intuit-required": "Optional",
      "x-intuit-default": "This Fiscal Year-to-date"
    },
    "adjusted_gain_loss": {
      "type": "string",
      "description": "Specifies whether unrealized gain and losses are included in the report.\nSupported Values: true, false",
      "x-intuit-required": "Optional",
      "x-intuit-default": "<span class=\"literal\">false</span>"
    },
    "class": {
      "type": "string",
      "description": "Filters report contents to include information for specified classes if so configured in the company file.\nSupported Values: One or more comma separated class IDs as returned in the attribute, Class.Id, of the Class entity response code.",
      "x-intuit-required": "Optional",
      "x-intuit-default": "Include data for all classes"
    },
    "sort_by": {
      "type": "string",
      "description": "The column type used in sorting report rows. Specify a column type as defined with the columns query parameter.",
      "x-intuit-required": "Optional",
      "x-intuit-default": "<span class=\"literal\">txn_type</span>"
    },
    "payment_method": {
      "type": "string",
      "description": "Filters report contents based on payment method.\nSupported Values: Cash, Check, Dinners Club, American Express, Discover, MasterCard, Visa",
      "x-intuit-required": "Optional",
      "x-intuit-default": "Default includes information for all payment methods"
    },
    "sort_order": {
      "type": "string",
      "description": "The sort order.\nSupported Values: ascend, descend",
      "x-intuit-required": "Optional",
      "x-intuit-default": "<span class=\"literal\">ascend</span>"
    },
    "employee": {
      "type": "string",
      "description": "Filters report contents to include information for specified employees.\nSupported Values: One or more comma separated account IDs as returned in the attribute, Employee.Id, of the Employee entity response code.",
      "x-intuit-required": "Optional",
      "x-intuit-default": "Include data for all employees"
    },
    "department": {
      "type": "string",
      "description": "Filters report contents to include information for specified departments if so configured in the company file.\nSupported Values: One or more comma separated department IDs as returned in the attribute, Department.Id of the Department object response code.",
      "x-intuit-required": "Optional",
      "x-intuit-default": "Include data for all departments"
    },
    "vendor": {
      "type": "string",
      "description": "Filters report contents to include information for specified vendors.\nSupported Values: One or more comma separated vendor IDs as returned in the attribute, Vendor.Id, of the Vendor object response code.",
      "x-intuit-required": "Optional",
      "x-intuit-default": "Return data for all vendors"
    },
    "account_type": {
      "type": "string",
      "description": "Account type from which transactions are included in the report.\nSupported Values: AccountsPayable, AccountsReceivable, Bank, CostOfGoodsSold, CreditCard, Equity, Expense, FixedAsset, Income, LongTermLiability, NonPosting, OtherAsset, OtherCurrentAsset, OtherCurrentLiability, OtherExpense, OtherIncome",
      "x-intuit-required": "Optional",
      "x-intuit-default": "All account types"
    },
    "start_date": {
      "type": "string",
      "description": "The start date of the report, in the format YYYY-MM-DD. start_date must be less than end_date. Use if you want the report to cover an explicit date range; otherwise, use date_macro to cover a standard report date range. If not specified value of date_macro is used",
      "x-intuit-required": "Optional"
    },
    "columns": {
      "type": "string",
      "description": "Column types to be shown in the report.\nSupported Values: create_by, create_date, doc_num*, last_mod_by, last_mod_date, memo*, name*, pmt_mthd, split_acc*, tx_date*, txn_type* \n Additional columns with tax enabled: tax_code \n Additional columns with class tracking enabled: klass_name* \n Additional columns with location tracking enabled: dept_name*  Multicurrency is enabled for the company if Preferences.MultiCurrencyEnabled is set to true. Read more about multicurrency support here. \nNonTracking status is enabled for the company if CompanyInfo.NameValue.Name.NonTracking  is set to  true. Currently enabled for Canadian company, other locales can be added in the future.",
      "x-intuit-required": "Optional",
      "x-intuit-default": "columns denoted with *"
    }
  }
}