defmodule Stripe.Reporting.ReportRun do use Stripe.Entity @moduledoc "The Report Run object represents an instance of a report type generated with\nspecific run parameters. Once the object is created, Stripe begins processing the report.\nWhen the report has finished running, it will give you a reference to a file\nwhere you can retrieve your results. For an overview, see\n[API Access to Reports](https://stripe.com/docs/reporting/statements/api).\n\nNote that certain report types can only be run based on your live-mode data (not test-mode\ndata), and will error when queried without a [live-mode API key](https://stripe.com/docs/keys#test-live-modes)." ( defstruct [ :created, :error, :id, :livemode, :object, :parameters, :report_type, :result, :status, :succeeded_at ] @typedoc "The `reporting.report_run` type.\n\n * `created` Time at which the object was created. Measured in seconds since the Unix epoch.\n * `error` If something should go wrong during the run, a message about the failure (populated when\n `status=failed`).\n * `id` Unique identifier for the object.\n * `livemode` `true` if the report is run on live mode data and `false` if it is run on test mode data.\n * `object` String representing the object's type. Objects of the same type share the same value.\n * `parameters` \n * `report_type` The ID of the [report type](https://stripe.com/docs/reports/report-types) to run, such as `\"balance.summary.1\"`.\n * `result` The file object representing the result of the report run (populated when\n `status=succeeded`).\n * `status` Status of this report run. This will be `pending` when the run is initially created.\n When the run finishes, this will be set to `succeeded` and the `result` field will be populated.\n Rarely, we may encounter an error, at which point this will be set to `failed` and the `error` field will be populated.\n * `succeeded_at` Timestamp at which this run successfully finished (populated when\n `status=succeeded`). Measured in seconds since the Unix epoch.\n" @type t :: %__MODULE__{ created: integer, error: binary | nil, id: binary, livemode: boolean, object: binary, parameters: term, report_type: binary, result: Stripe.File.t() | nil, status: binary, succeeded_at: integer | nil } ) ( @typedoc nil @type created :: %{ optional(:gt) => integer, optional(:gte) => integer, optional(:lt) => integer, optional(:lte) => integer } ) ( @typedoc "Parameters specifying how the report should be run. Different Report Types have different required and optional parameters, listed in the [API Access to Reports](https://stripe.com/docs/reporting/statements/api) documentation." @type parameters :: %{ optional(:columns) => list(binary), optional(:connected_account) => binary, optional(:currency) => binary, optional(:interval_end) => integer, optional(:interval_start) => integer, optional(:payout) => binary, optional(:reporting_category) => :advance | :advance_funding | :anticipation_repayment | :charge | :charge_failure | :climate_order_purchase | :climate_order_refund | :connect_collection_transfer | :connect_reserved_funds | :contribution | :dispute | :dispute_reversal | :fee | :financing_paydown | :financing_paydown_reversal | :financing_payout | :financing_payout_reversal | :issuing_authorization_hold | :issuing_authorization_release | :issuing_dispute | :issuing_transaction | :network_cost | :other_adjustment | :partial_capture_reversal | :payout | :payout_reversal | :platform_earning | :platform_earning_refund | :refund | :refund_failure | :risk_reserved_funds | :tax | :topup | :topup_reversal | :transfer | :transfer_reversal | :unreconciled_customer_funds, optional(:timezone) => :"Africa/Abidjan" | :"Africa/Accra" | :"Africa/Addis_Ababa" | :"Africa/Algiers" | :"Africa/Asmara" | :"Africa/Asmera" | :"Africa/Bamako" | :"Africa/Bangui" | :"Africa/Banjul" | :"Africa/Bissau" | :"Africa/Blantyre" | :"Africa/Brazzaville" | :"Africa/Bujumbura" | :"Africa/Cairo" | :"Africa/Casablanca" | :"Africa/Ceuta" | :"Africa/Conakry" | :"Africa/Dakar" | :"Africa/Dar_es_Salaam" | :"Africa/Djibouti" | :"Africa/Douala" | :"Africa/El_Aaiun" | :"Africa/Freetown" | :"Africa/Gaborone" | :"Africa/Harare" | :"Africa/Johannesburg" | :"Africa/Juba" | :"Africa/Kampala" | :"Africa/Khartoum" | :"Africa/Kigali" | :"Africa/Kinshasa" | :"Africa/Lagos" | :"Africa/Libreville" | :"Africa/Lome" | :"Africa/Luanda" | :"Africa/Lubumbashi" | :"Africa/Lusaka" | :"Africa/Malabo" | :"Africa/Maputo" | :"Africa/Maseru" | :"Africa/Mbabane" | :"Africa/Mogadishu" | :"Africa/Monrovia" | :"Africa/Nairobi" | :"Africa/Ndjamena" | :"Africa/Niamey" | :"Africa/Nouakchott" | :"Africa/Ouagadougou" | :"Africa/Porto-Novo" | :"Africa/Sao_Tome" | :"Africa/Timbuktu" | :"Africa/Tripoli" | :"Africa/Tunis" | :"Africa/Windhoek" | :"America/Adak" | :"America/Anchorage" | :"America/Anguilla" | :"America/Antigua" | :"America/Araguaina" | :"America/Argentina/Buenos_Aires" | :"America/Argentina/Catamarca" | :"America/Argentina/ComodRivadavia" | :"America/Argentina/Cordoba" | :"America/Argentina/Jujuy" | :"America/Argentina/La_Rioja" | :"America/Argentina/Mendoza" | :"America/Argentina/Rio_Gallegos" | :"America/Argentina/Salta" | :"America/Argentina/San_Juan" | :"America/Argentina/San_Luis" | :"America/Argentina/Tucuman" | :"America/Argentina/Ushuaia" | :"America/Aruba" | :"America/Asuncion" | :"America/Atikokan" | :"America/Atka" | :"America/Bahia" | :"America/Bahia_Banderas" | :"America/Barbados" | :"America/Belem" | :"America/Belize" | :"America/Blanc-Sablon" | :"America/Boa_Vista" | :"America/Bogota" | :"America/Boise" | :"America/Buenos_Aires" | :"America/Cambridge_Bay" | :"America/Campo_Grande" | :"America/Cancun" | :"America/Caracas" | :"America/Catamarca" | :"America/Cayenne" | :"America/Cayman" | :"America/Chicago" | :"America/Chihuahua" | :"America/Ciudad_Juarez" | :"America/Coral_Harbour" | :"America/Cordoba" | :"America/Costa_Rica" | :"America/Coyhaique" | :"America/Creston" | :"America/Cuiaba" | :"America/Curacao" | :"America/Danmarkshavn" | :"America/Dawson" | :"America/Dawson_Creek" | :"America/Denver" | :"America/Detroit" | :"America/Dominica" | :"America/Edmonton" | :"America/Eirunepe" | :"America/El_Salvador" | :"America/Ensenada" | :"America/Fort_Nelson" | :"America/Fort_Wayne" | :"America/Fortaleza" | :"America/Glace_Bay" | :"America/Godthab" | :"America/Goose_Bay" | :"America/Grand_Turk" | :"America/Grenada" | :"America/Guadeloupe" | :"America/Guatemala" | :"America/Guayaquil" | :"America/Guyana" | :"America/Halifax" | :"America/Havana" | :"America/Hermosillo" | :"America/Indiana/Indianapolis" | :"America/Indiana/Knox" | :"America/Indiana/Marengo" | :"America/Indiana/Petersburg" | :"America/Indiana/Tell_City" | :"America/Indiana/Vevay" | :"America/Indiana/Vincennes" | :"America/Indiana/Winamac" | :"America/Indianapolis" | :"America/Inuvik" | :"America/Iqaluit" | :"America/Jamaica" | :"America/Jujuy" | :"America/Juneau" | :"America/Kentucky/Louisville" | :"America/Kentucky/Monticello" | :"America/Knox_IN" | :"America/Kralendijk" | :"America/La_Paz" | :"America/Lima" | :"America/Los_Angeles" | :"America/Louisville" | :"America/Lower_Princes" | :"America/Maceio" | :"America/Managua" | :"America/Manaus" | :"America/Marigot" | :"America/Martinique" | :"America/Matamoros" | :"America/Mazatlan" | :"America/Mendoza" | :"America/Menominee" | :"America/Merida" | :"America/Metlakatla" | :"America/Mexico_City" | :"America/Miquelon" | :"America/Moncton" | :"America/Monterrey" | :"America/Montevideo" | :"America/Montreal" | :"America/Montserrat" | :"America/Nassau" | :"America/New_York" | :"America/Nipigon" | :"America/Nome" | :"America/Noronha" | :"America/North_Dakota/Beulah" | :"America/North_Dakota/Center" | :"America/North_Dakota/New_Salem" | :"America/Nuuk" | :"America/Ojinaga" | :"America/Panama" | :"America/Pangnirtung" | :"America/Paramaribo" | :"America/Phoenix" | :"America/Port-au-Prince" | :"America/Port_of_Spain" | :"America/Porto_Acre" | :"America/Porto_Velho" | :"America/Puerto_Rico" | :"America/Punta_Arenas" | :"America/Rainy_River" | :"America/Rankin_Inlet" | :"America/Recife" | :"America/Regina" | :"America/Resolute" | :"America/Rio_Branco" | :"America/Rosario" | :"America/Santa_Isabel" | :"America/Santarem" | :"America/Santiago" | :"America/Santo_Domingo" | :"America/Sao_Paulo" | :"America/Scoresbysund" | :"America/Shiprock" | :"America/Sitka" | :"America/St_Barthelemy" | :"America/St_Johns" | :"America/St_Kitts" | :"America/St_Lucia" | :"America/St_Thomas" | :"America/St_Vincent" | :"America/Swift_Current" | :"America/Tegucigalpa" | :"America/Thule" | :"America/Thunder_Bay" | :"America/Tijuana" | :"America/Toronto" | :"America/Tortola" | :"America/Vancouver" | :"America/Virgin" | :"America/Whitehorse" | :"America/Winnipeg" | :"America/Yakutat" | :"America/Yellowknife" | :"Antarctica/Casey" | :"Antarctica/Davis" | :"Antarctica/DumontDUrville" | :"Antarctica/Macquarie" | :"Antarctica/Mawson" | :"Antarctica/McMurdo" | :"Antarctica/Palmer" | :"Antarctica/Rothera" | :"Antarctica/South_Pole" | :"Antarctica/Syowa" | :"Antarctica/Troll" | :"Antarctica/Vostok" | :"Arctic/Longyearbyen" | :"Asia/Aden" | :"Asia/Almaty" | :"Asia/Amman" | :"Asia/Anadyr" | :"Asia/Aqtau" | :"Asia/Aqtobe" | :"Asia/Ashgabat" | :"Asia/Ashkhabad" | :"Asia/Atyrau" | :"Asia/Baghdad" | :"Asia/Bahrain" | :"Asia/Baku" | :"Asia/Bangkok" | :"Asia/Barnaul" | :"Asia/Beirut" | :"Asia/Bishkek" | :"Asia/Brunei" | :"Asia/Calcutta" | :"Asia/Chita" | :"Asia/Choibalsan" | :"Asia/Chongqing" | :"Asia/Chungking" | :"Asia/Colombo" | :"Asia/Dacca" | :"Asia/Damascus" | :"Asia/Dhaka" | :"Asia/Dili" | :"Asia/Dubai" | :"Asia/Dushanbe" | :"Asia/Famagusta" | :"Asia/Gaza" | :"Asia/Harbin" | :"Asia/Hebron" | :"Asia/Ho_Chi_Minh" | :"Asia/Hong_Kong" | :"Asia/Hovd" | :"Asia/Irkutsk" | :"Asia/Istanbul" | :"Asia/Jakarta" | :"Asia/Jayapura" | :"Asia/Jerusalem" | :"Asia/Kabul" | :"Asia/Kamchatka" | :"Asia/Karachi" | :"Asia/Kashgar" | :"Asia/Kathmandu" | :"Asia/Katmandu" | :"Asia/Khandyga" | :"Asia/Kolkata" | :"Asia/Krasnoyarsk" | :"Asia/Kuala_Lumpur" | :"Asia/Kuching" | :"Asia/Kuwait" | :"Asia/Macao" | :"Asia/Macau" | :"Asia/Magadan" | :"Asia/Makassar" | :"Asia/Manila" | :"Asia/Muscat" | :"Asia/Nicosia" | :"Asia/Novokuznetsk" | :"Asia/Novosibirsk" | :"Asia/Omsk" | :"Asia/Oral" | :"Asia/Phnom_Penh" | :"Asia/Pontianak" | :"Asia/Pyongyang" | :"Asia/Qatar" | :"Asia/Qostanay" | :"Asia/Qyzylorda" | :"Asia/Rangoon" | :"Asia/Riyadh" | :"Asia/Saigon" | :"Asia/Sakhalin" | :"Asia/Samarkand" | :"Asia/Seoul" | :"Asia/Shanghai" | :"Asia/Singapore" | :"Asia/Srednekolymsk" | :"Asia/Taipei" | :"Asia/Tashkent" | :"Asia/Tbilisi" | :"Asia/Tehran" | :"Asia/Tel_Aviv" | :"Asia/Thimbu" | :"Asia/Thimphu" | :"Asia/Tokyo" | :"Asia/Tomsk" | :"Asia/Ujung_Pandang" | :"Asia/Ulaanbaatar" | :"Asia/Ulan_Bator" | :"Asia/Urumqi" | :"Asia/Ust-Nera" | :"Asia/Vientiane" | :"Asia/Vladivostok" | :"Asia/Yakutsk" | :"Asia/Yangon" | :"Asia/Yekaterinburg" | :"Asia/Yerevan" | :"Atlantic/Azores" | :"Atlantic/Bermuda" | :"Atlantic/Canary" | :"Atlantic/Cape_Verde" | :"Atlantic/Faeroe" | :"Atlantic/Faroe" | :"Atlantic/Jan_Mayen" | :"Atlantic/Madeira" | :"Atlantic/Reykjavik" | :"Atlantic/South_Georgia" | :"Atlantic/St_Helena" | :"Atlantic/Stanley" | :"Australia/ACT" | :"Australia/Adelaide" | :"Australia/Brisbane" | :"Australia/Broken_Hill" | :"Australia/Canberra" | :"Australia/Currie" | :"Australia/Darwin" | :"Australia/Eucla" | :"Australia/Hobart" | :"Australia/LHI" | :"Australia/Lindeman" | :"Australia/Lord_Howe" | :"Australia/Melbourne" | :"Australia/NSW" | :"Australia/North" | :"Australia/Perth" | :"Australia/Queensland" | :"Australia/South" | :"Australia/Sydney" | :"Australia/Tasmania" | :"Australia/Victoria" | :"Australia/West" | :"Australia/Yancowinna" | :"Brazil/Acre" | :"Brazil/DeNoronha" | :"Brazil/East" | :"Brazil/West" | :CET | :CST6CDT | :"Canada/Atlantic" | :"Canada/Central" | :"Canada/Eastern" | :"Canada/Mountain" | :"Canada/Newfoundland" | :"Canada/Pacific" | :"Canada/Saskatchewan" | :"Canada/Yukon" | :"Chile/Continental" | :"Chile/EasterIsland" | :Cuba | :EET | :EST | :EST5EDT | :Egypt | :Eire | :"Etc/GMT" | :"Etc/GMT+0" | :"Etc/GMT+1" | :"Etc/GMT+10" | :"Etc/GMT+11" | :"Etc/GMT+12" | :"Etc/GMT+2" | :"Etc/GMT+3" | :"Etc/GMT+4" | :"Etc/GMT+5" | :"Etc/GMT+6" | :"Etc/GMT+7" | :"Etc/GMT+8" | :"Etc/GMT+9" | :"Etc/GMT-0" | :"Etc/GMT-1" | :"Etc/GMT-10" | :"Etc/GMT-11" | :"Etc/GMT-12" | :"Etc/GMT-13" | :"Etc/GMT-14" | :"Etc/GMT-2" | :"Etc/GMT-3" | :"Etc/GMT-4" | :"Etc/GMT-5" | :"Etc/GMT-6" | :"Etc/GMT-7" | :"Etc/GMT-8" | :"Etc/GMT-9" | :"Etc/GMT0" | :"Etc/Greenwich" | :"Etc/UCT" | :"Etc/UTC" | :"Etc/Universal" | :"Etc/Zulu" | :"Europe/Amsterdam" | :"Europe/Andorra" | :"Europe/Astrakhan" | :"Europe/Athens" | :"Europe/Belfast" | :"Europe/Belgrade" | :"Europe/Berlin" | :"Europe/Bratislava" | :"Europe/Brussels" | :"Europe/Bucharest" | :"Europe/Budapest" | :"Europe/Busingen" | :"Europe/Chisinau" | :"Europe/Copenhagen" | :"Europe/Dublin" | :"Europe/Gibraltar" | :"Europe/Guernsey" | :"Europe/Helsinki" | :"Europe/Isle_of_Man" | :"Europe/Istanbul" | :"Europe/Jersey" | :"Europe/Kaliningrad" | :"Europe/Kiev" | :"Europe/Kirov" | :"Europe/Kyiv" | :"Europe/Lisbon" | :"Europe/Ljubljana" | :"Europe/London" | :"Europe/Luxembourg" | :"Europe/Madrid" | :"Europe/Malta" | :"Europe/Mariehamn" | :"Europe/Minsk" | :"Europe/Monaco" | :"Europe/Moscow" | :"Europe/Nicosia" | :"Europe/Oslo" | :"Europe/Paris" | :"Europe/Podgorica" | :"Europe/Prague" | :"Europe/Riga" | :"Europe/Rome" | :"Europe/Samara" | :"Europe/San_Marino" | :"Europe/Sarajevo" | :"Europe/Saratov" | :"Europe/Simferopol" | :"Europe/Skopje" | :"Europe/Sofia" | :"Europe/Stockholm" | :"Europe/Tallinn" | :"Europe/Tirane" | :"Europe/Tiraspol" | :"Europe/Ulyanovsk" | :"Europe/Uzhgorod" | :"Europe/Vaduz" | :"Europe/Vatican" | :"Europe/Vienna" | :"Europe/Vilnius" | :"Europe/Volgograd" | :"Europe/Warsaw" | :"Europe/Zagreb" | :"Europe/Zaporozhye" | :"Europe/Zurich" | :Factory | :GB | :"GB-Eire" | :GMT | :"GMT+0" | :"GMT-0" | :GMT0 | :Greenwich | :HST | :Hongkong | :Iceland | :"Indian/Antananarivo" | :"Indian/Chagos" | :"Indian/Christmas" | :"Indian/Cocos" | :"Indian/Comoro" | :"Indian/Kerguelen" | :"Indian/Mahe" | :"Indian/Maldives" | :"Indian/Mauritius" | :"Indian/Mayotte" | :"Indian/Reunion" | :Iran | :Israel | :Jamaica | :Japan | :Kwajalein | :Libya | :MET | :MST | :MST7MDT | :"Mexico/BajaNorte" | :"Mexico/BajaSur" | :"Mexico/General" | :NZ | :"NZ-CHAT" | :Navajo | :PRC | :PST8PDT | :"Pacific/Apia" | :"Pacific/Auckland" | :"Pacific/Bougainville" | :"Pacific/Chatham" | :"Pacific/Chuuk" | :"Pacific/Easter" | :"Pacific/Efate" | :"Pacific/Enderbury" | :"Pacific/Fakaofo" | :"Pacific/Fiji" | :"Pacific/Funafuti" | :"Pacific/Galapagos" | :"Pacific/Gambier" | :"Pacific/Guadalcanal" | :"Pacific/Guam" | :"Pacific/Honolulu" | :"Pacific/Johnston" | :"Pacific/Kanton" | :"Pacific/Kiritimati" | :"Pacific/Kosrae" | :"Pacific/Kwajalein" | :"Pacific/Majuro" | :"Pacific/Marquesas" | :"Pacific/Midway" | :"Pacific/Nauru" | :"Pacific/Niue" | :"Pacific/Norfolk" | :"Pacific/Noumea" | :"Pacific/Pago_Pago" | :"Pacific/Palau" | :"Pacific/Pitcairn" | :"Pacific/Pohnpei" | :"Pacific/Ponape" | :"Pacific/Port_Moresby" | :"Pacific/Rarotonga" | :"Pacific/Saipan" | :"Pacific/Samoa" | :"Pacific/Tahiti" | :"Pacific/Tarawa" | :"Pacific/Tongatapu" | :"Pacific/Truk" | :"Pacific/Wake" | :"Pacific/Wallis" | :"Pacific/Yap" | :Poland | :Portugal | :ROC | :ROK | :Singapore | :Turkey | :UCT | :"US/Alaska" | :"US/Aleutian" | :"US/Arizona" | :"US/Central" | :"US/East-Indiana" | :"US/Eastern" | :"US/Hawaii" | :"US/Indiana-Starke" | :"US/Michigan" | :"US/Mountain" | :"US/Pacific" | :"US/Pacific-New" | :"US/Samoa" | :UTC | :Universal | :"W-SU" | :WET | :Zulu } ) ( nil @doc "
Returns a list of Report Runs, with the most recent appearing first.
\n\n#### Details\n\n * Method: `get`\n * Path: `/v1/reporting/report_runs`\n" ( @spec list( params :: %{ optional(:created) => created | integer, optional(:ending_before) => binary, optional(:expand) => list(binary), optional(:limit) => integer, optional(:starting_after) => binary }, opts :: Keyword.t() ) :: {:ok, Stripe.List.t(Stripe.Reporting.ReportRun.t())} | {:error, Stripe.ApiErrors.t()} | {:error, term()} def list(params \\ %{}, opts \\ []) do path = Stripe.OpenApi.Path.replace_path_params("/v1/reporting/report_runs", [], []) Stripe.Request.new_request(opts) |> Stripe.Request.put_endpoint(path) |> Stripe.Request.put_params(params) |> Stripe.Request.put_method(:get) |> Stripe.Request.make_request() end ) ) ( nil @doc "Retrieves the details of an existing Report Run.
\n\n#### Details\n\n * Method: `get`\n * Path: `/v1/reporting/report_runs/{report_run}`\n" ( @spec retrieve( report_run :: binary(), params :: %{optional(:expand) => list(binary)}, opts :: Keyword.t() ) :: {:ok, Stripe.Reporting.ReportRun.t()} | {:error, Stripe.ApiErrors.t()} | {:error, term()} def retrieve(report_run, params \\ %{}, opts \\ []) do path = Stripe.OpenApi.Path.replace_path_params( "/v1/reporting/report_runs/{report_run}", [ %{ __struct__: OpenApiGen.Blueprint.Parameter, in: "path", name: "report_run", required: true, schema: %{ __struct__: OpenApiGen.Blueprint.Parameter.Schema, any_of: [], items: [], name: "report_run", properties: [], title: nil, type: "string" } } ], [report_run] ) Stripe.Request.new_request(opts) |> Stripe.Request.put_endpoint(path) |> Stripe.Request.put_params(params) |> Stripe.Request.put_method(:get) |> Stripe.Request.make_request() end ) ) ( nil @doc "Creates a new object and begin running the report. (Certain report types require a live-mode API key.)
\n\n#### Details\n\n * Method: `post`\n * Path: `/v1/reporting/report_runs`\n" ( @spec create( params :: %{ optional(:expand) => list(binary), optional(:parameters) => parameters, optional(:report_type) => binary }, opts :: Keyword.t() ) :: {:ok, Stripe.Reporting.ReportRun.t()} | {:error, Stripe.ApiErrors.t()} | {:error, term()} def create(params \\ %{}, opts \\ []) do path = Stripe.OpenApi.Path.replace_path_params("/v1/reporting/report_runs", [], []) Stripe.Request.new_request(opts) |> Stripe.Request.put_endpoint(path) |> Stripe.Request.put_params(params) |> Stripe.Request.put_method(:post) |> Stripe.Request.make_request() end ) ) end