{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/grubhub/main/json-schema/grubhub-createexportreportrequestbypartner-schema.json",
  "title": "CreateExportReportRequestByPartner",
  "x-generated": "2026-09-17",
  "x-method": "derived",
  "x-source": "openapi/grubhub-reporting-endpoints-openapi.yml#/components/schemas/CreateExportReportRequestByPartner",
  "required": [
    "merchant_ids",
    "report_columns",
    "report_parameters",
    "report_type"
  ],
  "type": "object",
  "properties": {
    "report_type": {
      "type": "string",
      "description": "The type of report to generate.",
      "example": "order-details"
    },
    "report_columns": {
      "minItems": 1,
      "uniqueItems": true,
      "type": "array",
      "description": "The columns to include in the report. This can be a subset of the columns available for the specified report type. To request all columns, specify all available columns.",
      "example": [
        "order_id",
        "customer_name",
        "order_total"
      ],
      "items": {
        "type": "string"
      }
    },
    "merchant_ids": {
      "maxItems": 25000,
      "minItems": 1,
      "uniqueItems": true,
      "type": "array",
      "description": "The merchant IDs to include in the report. You may provide Grubhub merchant IDs or Partner external IDs if there is a configured mapping to Grubhub merchant IDs. Partners enabled for external IDs can only pass in external IDs.",
      "example": [
        "12345678",
        "56789016"
      ],
      "items": {
        "type": "string"
      }
    },
    "report_name": {
      "type": "string",
      "description": "The name for the generated CSV report file. This field is optional. If left blank, a name will be generated using the specified parameters.",
      "example": "order_details_september"
    },
    "report_parameters": {
      "$ref": "#/$defs/ReportRequestParametersByPartner"
    }
  },
  "description": "The request body for requesting a report.",
  "$defs": {
    "DateRange": {
      "required": [
        "end_date",
        "start_date"
      ],
      "type": "object",
      "properties": {
        "start_date": {
          "type": "string",
          "format": "date"
        },
        "end_date": {
          "type": "string",
          "format": "date"
        }
      },
      "description": "Date range for the report using a start and end date in yyyy-MM-dd format.",
      "example": {
        "start_date": "2025-01-01",
        "end_date": "2025-01-31"
      }
    },
    "ReportRequestParametersByPartner": {
      "required": [
        "date_range"
      ],
      "type": "object",
      "properties": {
        "date_range": {
          "$ref": "#/$defs/DateRange"
        }
      },
      "description": "The parameters to request the report. Currently, the only supported parameter is date range."
    }
  }
}