Power.Dev Hangfire Services

<back to all web services

MisoImportJobRequest

The following routes are available for this service:
POST/miso-import-job
<?php namespace dtos;

use DateTime;
use Exception;
use DateInterval;
use JsonSerializable;
use ServiceStack\{IReturn,IReturnVoid,IGet,IPost,IPut,IDelete,IPatch,IMeta,IHasSessionId,IHasBearerToken,IHasVersion};
use ServiceStack\{ICrud,ICreateDb,IUpdateDb,IPatchDb,IDeleteDb,ISaveDb,AuditBase,QueryDb,QueryDb2,QueryData,QueryData2,QueryResponse};
use ServiceStack\{ResponseStatus,ResponseError,EmptyResponse,IdResponse,ArrayList,KeyValuePair2,StringResponse,StringsResponse,Tuple2,Tuple3,ByteArray};
use ServiceStack\{JsonConverters,Returns,TypeContext};


enum UrlActionType : int
{
    case Undefined = 0;
    case rt_lmp_five_min = 1;
    case rt_lmp_five_min_pre = 2;
    case rt_hourly_lmp = 3;
    case rt_hourly_lmp_pre = 4;
    case rt_mcp = 5;
    case rt_as_demand = 6;
    case rt_as_demand_five_min = 7;
    case da_as_demand = 8;
    case as_demand = 9;
    case rt_mcp_sup = 11;
    case da_lmp = 101;
    case da_mcp = 102;
    case ercot_ancillary_service_plan = 103;
    case ercot_as_reports = 104;
    case generation_outage = 200;
    case fuel_mix = 211;
    case fuel_mix_hour_quarter = 212;
    case fuel_mix_hourly = 213;
    case fuel_mix_detail = 215;
    case fuel_mix_forecast = 216;
    case application_queue = 220;
    case da_shadow_price = 301;
    case rt_shadow_price = 302;
    case par_flow = 501;
    case rt_mcp_zip = 1005;
    case da_mcp_zip = 1102;
    case load_or_demand = 1501;
    case load_or_demand_forecast = 1502;
    case emission = 1520;
    case fuel_forecast = 1525;
    case rt_batter_arbitrage = 2001;
    case da_batter_arbitrage = 2002;
    case interface_flow = 4001;
    case pp_production_data = 5000;
    case marginal_price = 5001;
    case pool_price = 5002;
    case aeso_ancillary = 5003;
    case aeso_standby_operating_reserve = 5004;
    case power_plant = 6000;
    case power_plant_monthly = 6001;
    case power_plant_yearly = 6002;
    case power_plant_utility = 6003;
    case pp_production_data_monthly = 6004;
    case pp_production_data_yearly = 6005;
    case ercot_application_queue = 7000;
    case ercot_load_wz_data = 7001;
    case pjm_load_hourly_data = 7002;
    case isone_load_hourly_data = 7003;
    case nyiso_load_hourly_data = 7004;
    case miso_load_data = 7005;
    case spp_load_hourly_data = 7006;
    case caiso_load_data = 7007;
    case spp_load_fivemin_data = 7008;
    case pjm_load_fivemin_data = 7009;
    case isone_load_fivemin_data = 7010;
    case nyiso_load_fivemin_data = 7011;
    case ercot_load_fz_hourly_data = 7012;
    case ercot_load_fz_fivemin_data = 7013;
    case ercot_60d_dam_gen_resource_data = 7014;
    case ercot_60d_dam_load_resource_data = 7015;
    case ercot_60d_sced_gen_resource_data = 7016;
    case ercot_60d_sced_load_resource_data = 7017;
    case ercot_dam_shadow_prices = 7018;
    case ercot_sced_shadow_prices = 7019;
    case ercot_real_time_adders_reserves = 7020;
    case ercot_as_reports_archive = 7021;
    case ercot_ancillary_service_plan_archive = 7022;
    case ercot_day_ahead_load_forecast = 7023;
    case ercot_hourly_resource_outage_capacity = 7024;
    case ercot_hourly_solar_report = 7025;
    case ercot_hourly_wind_report = 7026;
    case ercot_load_forecast_by_weather_zone = 7027;
    case ercot_load_forecast_by_zone = 7028;
    case ercot_load_forecast_all = 7029;
    case ercot_short_term_system_adequacy = 7030;
    case ercot_spp_price_corrections = 7031;
    case ercot_temperature_forecast_by_zone = 7032;
    case ercot_unplanned_resource_outage = 7033;
    case ercot_highest_price_as_offer_selected = 7034;
    case ercot_available_seasonal_capacity_forecast = 7035;
    case ercot_generation_outages = 7036;
    case caiso_ra_capacity = 7401;
    case isone_btm_solar = 7402;
    case isone_seven_day_wind_forecast = 7403;
    case isone_seven_day_solar_forecast = 7404;
    case nrel_future_data = 8000;
    case eia_generation_by_fuel = 9000;
    case eia_generation_by_subregion = 9001;
    case eia_demand_forecast = 9002;
    case nyiso_fuel_mix = 10001;
    case nyiso_btm_solar = 10002;
    case nyiso_btm_solar_forecast = 10003;
    case nyiso_btm_solar_capacity_tracking = 10004;
    case nyiso_load_forecast = 10005;
    case pjm_load_forecast = 10006;
    case pjm_projected_rto_peak_stats = 10007;
    case pjm_load_forecast_hourly_historical = 10008;
    case pjm_operational_reserves = 10009;
    case pjm_projected_area_peak_stats = 10010;
    case pjm_solar_forecast_5min = 10011;
    case pjm_solar_forecast_hourly = 10012;
    case pjm_solar_generation_5min = 10013;
    case pjm_solar_generation_by_area = 10014;
    case pjm_transfer_interface_info = 10015;
    case pjm_transmission_limits = 10016;
    case pjm_wind_forecast_hourly = 10017;
    case pjm_wind_generation_by_area = 10018;
    case pjm_wind_generation_instantaneous = 10019;
    case spp_solar_and_wind_forecast = 10500;
    case spp_solar_and_wind_forecast_short_term = 10501;
    case spp_load_forecast_mid_term = 10502;
    case spp_generation_capacity = 10503;
    case spp_operating_reserves = 10504;
    case spp_ver_curtailments_data = 10505;
    case spp_load_forecast = 10506;
    case spp_fuel_mix_detailed_data = 10507;
    case da_ercot_lambda = 13113;
    case rt_ercot_lambda = 13114;
    case rt_lmp_five_min_weekly = -1000;
    case da_lmp_bus = -101;
    case rt_lmp_five_min_bus = -1;
}

class MisoImportJobRequest implements JsonSerializable
{
    public function __construct(
        /** @var UrlActionType|null */
        public ?UrlActionType $fileType=null,
        /** @var bool|null */
        public ?bool $recursive=null,
        /** @var int */
        public int $limit=0
    ) {
    }

    /** @throws Exception */
    public function fromMap($o): void {
        if (isset($o['fileType'])) $this->fileType = JsonConverters::from('UrlActionType', $o['fileType']);
        if (isset($o['recursive'])) $this->recursive = $o['recursive'];
        if (isset($o['limit'])) $this->limit = $o['limit'];
    }
    
    /** @throws Exception */
    public function jsonSerialize(): mixed
    {
        $o = [];
        if (isset($this->fileType)) $o['fileType'] = JsonConverters::to('UrlActionType', $this->fileType);
        if (isset($this->recursive)) $o['recursive'] = $this->recursive;
        if (isset($this->limit)) $o['limit'] = $this->limit;
        return empty($o) ? new class(){} : $o;
    }
}

PHP MisoImportJobRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /miso-import-job HTTP/1.1 
Host: catalog-jobs-dev.power.dev 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"fileType":"Undefined","recursive":false,"limit":0}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

(string)