### Example Featured Plans Response Source: https://partner.comparepower.com/developers/llms-full.txt Example JSON response for the featured plans API, showing plan details and expected prices for different usage levels. ```json [ { "_id": "6983780e7e513437e8c06e7f", "key": "txu-simple-rate-24", "product_id": "507f1f77bcf86cd799439099", "tdsp_duns": "957877905", "expected_prices": [ { "usage": 500, "price": 0.148 }, { "usage": 1000, "price": 0.136 }, { "usage": 2000, "price": 0.133 } ], "document_links": [ { "type": "efl", "link": "https://example.com/efl.pdf" }, { "type": "yraac", "link": "https://example.com/yraac.pdf" }, { "type": "tos", "link": "https://example.com/tos.pdf" } ] } ] ``` -------------------------------- ### Example TDSP Search Response Source: https://partner.comparepower.com/developers/llms-full.txt Example JSON response for searching TDSPs, returning details of the TDSP serving the specified zip code. ```json [ { "_id": "1039940674000", "name": "Oncor Electric Delivery Company LLC", "duns_number": "1039940674000", "doe_code": "5765", "date_created": "2023-01-15T00:00:00.000Z" } ] ``` -------------------------------- ### Example Single TDSP Response Source: https://partner.comparepower.com/developers/llms-full.txt Example JSON response for retrieving a single TDSP by ID, showing the TDSP's details. ```json { "_id": "957877905", "name": "CenterPoint Energy Houston Electric LLC", "duns_number": "957877905", "doe_code": "8901", "date_created": "2023-01-15T00:00:00.000Z" } ``` -------------------------------- ### Plan API Response Source: https://partner.comparepower.com/developers/llms-full.txt Example JSON response structure for the plans endpoint, including component charges and calculated expected prices. ```json [ { "_id": "6983780e7e513437e8c06e7f", "key": "txu-simple-rate-24", "product_id": "507f1f77bcf86cd799439099", "tdsp_duns": "957877905", "components": [ { "min": 0, "max": 999999, "amount": 0.089, "multiplicative": true, "compound": false, "description": "Energy Charge" }, { "min": 0, "max": 999999, "amount": 4.95, "multiplicative": false, "compound": false, "description": "Base Charge" }, { "min": 0, "max": 999999, "amount": 0.04199, "multiplicative": true, "compound": false, "description": "CenterPoint Delivery", "tdsp_charge": true } ], "expected_prices": [ { "usage": 500, "price": 0.148 }, { "usage": 1000, "price": 0.136 }, { "usage": 2000, "price": 0.133 } ], "document_links": [ { "type": "efl", "link": "https://example.com/efl.pdf" }, { "type": "yraac", "link": "https://example.com/yraac.pdf" }, { "type": "tos", "link": "https://example.com/tos.pdf" } ], "disabled": false, "date_created": "2024-06-01T00:00:00.000Z" } ] ``` -------------------------------- ### Get Plan Price Chart Source: https://partner.comparepower.com/developers/llms-full.txt Generates a price chart for a plan across a range of usage levels. ```APIDOC ## GET /api/plans/{id}/chart/{usage_start}/{usage_end}/{step} ### Description Get a price chart for a plan across a range of usage levels. Useful for plotting price-per-kWh curves. ### Method GET ### Endpoint /api/plans/{id}/chart/{usage_start}/{usage_end}/{step} ### Parameters #### Path Parameters - **id** (string) - Required - The plan ID. - **usage_start** (integer) - Required - Starting usage in kWh. - **usage_end** (integer) - Required - Ending usage in kWh. - **step** (integer) - Required - Step size in kWh between each data point. ### Warnings - Large ranges with small steps can produce very large responses. Keep `(usage_end - usage_start) / step` under 100 data points. ### Request Example ```bash curl "https://pricing.api.comparepower.com/api/plans/6983780e7e513437e8c06e7f/chart/500/2000/100" ``` ### Response #### Success Response (200) - **_id** (string) - The unique identifier for the plan. - **key** (string) - A unique key for the plan. - **expected_prices** (array) - An array of expected prices at different usage levels. - **usage** (integer) - The usage level in kWh. - **price** (number) - The calculated price. #### Response Example ```json [ { "_id": "6983780e7e513437e8c06e7f", "key": "txu-simple-rate-24", "expected_prices": [ { "usage": 500, "price": 0.148 }, { "usage": 600, "price": 0.145 }, { "usage": 700, "price": 0.143 }, { "usage": 800, "price": 0.141 }, { "usage": 900, "price": 0.139 }, { "usage": 1000, "price": 0.136 } ] } ] ``` ``` -------------------------------- ### Get Featured Plans Source: https://partner.comparepower.com/developers/llms-full.txt Retrieve Compare Power's editorially selected featured plans for a TDSP territory. Requires both `tdsp_duns` and `display_usage` parameters. The `display_usage` parameter accepts multiple values for different usage levels. ```bash curl "https://pricing.api.comparepower.com/api/featured_plans?tdsp_duns=957877905&display_usage=500&display_usage=1000&display_usage=2000" ``` -------------------------------- ### Brand API Response Source: https://partner.comparepower.com/developers/llms-full.txt Example JSON response structure for the brands endpoint. ```json [ { "_id": "60a1b2c3d4e5f6a7b8c9d0e1", "name": "TXU Energy", "legal_name": "TXU Energy Retail Company LLC", "puct_number": "10004", "date_created": "2023-01-15T00:00:00.000Z" } ] ``` -------------------------------- ### Get Estimated Usage Profile Source: https://partner.comparepower.com/developers/llms-full.txt Retrieve estimated monthly usage values based on property characteristics. ```http GET https://ercot.api.comparepower.com/api/esiids/{esiid}/profile?square_footage={sqft}&year_built={year} ``` -------------------------------- ### Get Single Plan Source: https://partner.comparepower.com/developers/llms-full.txt Retrieves a single plan by its ID. You can optionally include usage levels to calculate prices. ```APIDOC ## GET /api/plans/{id} ### Description Get a single plan by its ID. Optionally pass `display_usage` to include calculated prices. ### Method GET ### Endpoint /api/plans/{id} ### Parameters #### Path Parameters - **id** (string) - Required - The plan ID. #### Query Parameters - **display_usage** (integer[]) - Optional - Usage levels (kWh) at which to calculate prices. Pass as `display_usage=500&display_usage=1000`. ### Request Example ```bash curl "https://pricing.api.comparepower.com/api/plans/6983780e7e513437e8c06e7f?display_usage=1000" ``` ### Response #### Success Response (200) - **_id** (string) - The unique identifier for the plan. - **key** (string) - A unique key for the plan. - **product_id** (string) - The ID of the associated product. - **tdsp_duns** (string) - The DUNS number of the TDSP. - **components** (array) - An array of pricing components. - **min** (integer) - Minimum usage for this component. - **max** (integer) - Maximum usage for this component. - **amount** (number) - The price amount. - **multiplicative** (boolean) - Indicates if the amount is multiplicative. - **compound** (boolean) - Indicates if the amount is compounded. - **description** (string) - Description of the component. - **expected_prices** (array) - An array of expected prices at different usage levels. - **usage** (integer) - The usage level in kWh. - **price** (number) - The calculated price. - **document_links** (array) - Links to relevant plan documents. - **type** (string) - The type of document (e.g., 'efl', 'yraac', 'tos'). - **link** (string) - The URL to the document. - **disabled** (boolean) - Indicates if the plan is disabled. - **date_created** (string) - The date the plan was created. #### Response Example ```json { "_id": "6983780e7e513437e8c06e7f", "key": "txu-simple-rate-24", "product_id": "507f1f77bcf86cd799439099", "tdsp_duns": "957877905", "components": [ { "min": 0, "max": 999999, "amount": 0.089, "multiplicative": true, "compound": false, "description": "Energy Charge" } ], "expected_prices": [ { "usage": 1000, "price": 0.136 } ], "document_links": [ { "type": "efl", "link": "https://example.com/efl.pdf" }, { "type": "yraac", "link": "https://example.com/yraac.pdf" }, { "type": "tos", "link": "https://example.com/tos.pdf" } ], "disabled": false, "date_created": "2024-06-01T00:00:00.000Z" } ``` ``` -------------------------------- ### GET /api/featured_plans Source: https://partner.comparepower.com/developers/llms-full.txt Retrieves editorially selected featured electricity plans for a specific TDSP territory based on usage levels. ```APIDOC ## GET /api/featured_plans ### Description Get Compare Power's editorially selected featured plans for a TDSP territory. Requires both tdsp_duns and display_usage parameters. ### Method GET ### Endpoint https://pricing.api.comparepower.com/api/featured_plans ### Parameters #### Query Parameters - **tdsp_duns** (string) - Required - TDSP DUNS number. - **display_usage** (integer[]) - Required - Usage levels (kWh) to calculate prices at. Pass as repeated keys: display_usage=500&display_usage=1000. - **time_of_day** (string) - Optional - Time of day preference. - **home_type** (string) - Optional - Home type of the customer. ### Request Example curl "https://pricing.api.comparepower.com/api/featured_plans?tdsp_duns=957877905&display_usage=500&display_usage=1000&display_usage=2000" ### Response #### Success Response (200) - **_id** (string) - Plan ID - **key** (string) - Plan key - **product_id** (string) - Product ID - **tdsp_duns** (string) - TDSP DUNS number - **expected_prices** (array) - List of usage and price objects - **document_links** (array) - List of document type and link objects #### Response Example [ { "_id": "6983780e7e513437e8c06e7f", "key": "txu-simple-rate-24", "product_id": "507f1f77bcf86cd799439099", "tdsp_duns": "957877905", "expected_prices": [ { "usage": 500, "price": 0.148 }, { "usage": 1000, "price": 0.136 }, { "usage": 2000, "price": 0.133 } ], "document_links": [ { "type": "efl", "link": "https://example.com/efl.pdf" }, { "type": "yraac", "link": "https://example.com/yraac.pdf" }, { "type": "tos", "link": "https://example.com/tos.pdf" } ] } ] ``` -------------------------------- ### Example Single ESI ID Response Source: https://partner.comparepower.com/developers/llms-full.txt A sample JSON response for retrieving a single ESI ID record. This response contains comprehensive details about the service point. ```json { "_id": "1008901006120840492100", "esiid": "1008901006120840492100", "address": "816 RICHMOND AVE # 1", "address_overflow": "", "city": "HOUSTON", "date_created": "2021-05-12T15:18:59.195Z", "date_last_modified": "2025-09-05T10:42:51.201Z", "state": "TX", "zip_code": "77006", "zip_code_4": "5519", "duns": "957877905", "status": "Active", "premise_type": "Residential", "polr_customer_class": "Residential", "metered": "Y", "meter_read_cycle": "13", "power_region": "ERCOT", "station_code": "MN", "station_name": "MAIN", "switch_hold_indicator": "N", "tdsp_ams_indicator": "AMSM", "settlement_ams_indicator": "Y", "open_service_orders": "", "county": "HARRIS", "metered_service_type": "", "metered_service_type_desc": "" } ``` -------------------------------- ### GET /api/tdsps/{id} Source: https://partner.comparepower.com/developers/llms-full.txt Retrieves details for a single TDSP by its unique identifier. ```APIDOC ## GET /api/tdsps/{id} ### Description Get a single TDSP by its ID. ### Method GET ### Endpoint https://pricing.api.comparepower.com/api/tdsps/{id} ### Parameters #### Path Parameters - **id** (string) - Required - The TDSP ID. ### Request Example curl "https://pricing.api.comparepower.com/api/tdsps/957877905" ### Response #### Success Response (200) - **_id** (string) - TDSP ID - **name** (string) - TDSP name - **duns_number** (string) - DUNS number - **doe_code** (string) - DOE code - **date_created** (string) - Creation timestamp #### Response Example { "_id": "957877905", "name": "CenterPoint Energy Houston Electric LLC", "duns_number": "957877905", "doe_code": "8901", "date_created": "2023-01-15T00:00:00.000Z" } ``` -------------------------------- ### GET /api/tdsps Source: https://partner.comparepower.com/developers/llms-full.txt Searches for Transmission and Distribution Service Providers (TDSPs) based on various filters. ```APIDOC ## GET /api/tdsps ### Description Search for Transmission and Distribution Service Providers (TDSPs). TDSPs are the utility companies that own the power lines in Texas. ### Method GET ### Endpoint https://pricing.api.comparepower.com/api/tdsps ### Parameters #### Query Parameters - **name** (string) - Optional - Filter TDSPs by name. - **doe_code** (string) - Optional - Filter by DOE code. - **duns_number** (string) - Optional - Filter by DUNS number. - **zip_code** (string) - Optional - Resolve TDSP from a ZIP code. ### Request Example curl "https://pricing.api.comparepower.com/api/tdsps?zip_code=75208" ### Response #### Success Response (200) - **_id** (string) - TDSP ID - **name** (string) - TDSP name - **duns_number** (string) - DUNS number - **doe_code** (string) - DOE code - **date_created** (string) - Creation timestamp #### Response Example [ { "_id": "1039940674000", "name": "Oncor Electric Delivery Company LLC", "duns_number": "1039940674000", "doe_code": "5765", "date_created": "2023-01-15T00:00:00.000Z" } ] ``` -------------------------------- ### GET /api/plans Source: https://partner.comparepower.com/developers/llms-full.txt Searches for electricity plans with various filtering options. The `display_usage` parameter can be used to include `expected_prices` calculated at specified usage levels. It's important to note that `current=true` should always be passed when searching by `tdsp_duns` to avoid query failures. ```APIDOC ## GET /api/plans ### Description Search for electricity plans with filters. Returns an array of plan objects. Pass `display_usage` to include `expected_prices` calculated at those usage levels. ### Method GET ### Endpoint /api/plans ### Query Parameters - **tdsp_duns** (string) - Optional - TDSP DUNS number. Filters plans to a specific utility territory. - **brand_id** (string[]) - Optional - Filter by brand ID. Pass multiple values to match any. - **product_id** (string) - Optional - Filter by product ID. - **term** (string[]) - Optional - Filter by contract term length (months). Pass multiple values to match any. - **percent_green** (number) - Optional - Filter by minimum renewable energy percentage (0-1). - **is_pre_pay** (boolean) - Optional - Filter to pre-pay plans only. - **is_time_of_use** (boolean) - Optional - Filter to time-of-use plans only. - **requires_auto_pay** (boolean) - Optional - Filter plans that require auto-pay. - **display_usage** (integer[]) - Optional - Usage levels (kWh) at which to calculate prices. Pass as `display_usage=500&display_usage=1000`. Without this, `expected_prices` are omitted. - **current** (boolean) - Optional - Only return currently active plans. **Warning:** Always pass `current=true` when searching by `tdsp_duns`. - **disabled** (boolean) - Optional - Filter by disabled status. - **ended** (boolean) - Optional - Filter plans where end date is null. - **staged** (boolean) - Optional - Filter staged plans. ### Warnings - Always pass `current=true` when searching by `tdsp_duns`. Without it, the query fails. - The `display_usage` parameter is an array -- use repeated keys: `display_usage=500&display_usage=1000`. Passing a comma-separated string will not work. - Without `display_usage`, the response omits `expected_prices`. Always pass usage levels if you need price-per-kWh. ### Request Example ```bash curl "https://pricing.api.comparepower.com/api/plans?tdsp_duns=957877905&display_usage=500&display_usage=1000&display_usage=2000¤t=true" ``` ### Response #### Success Response (200) - **_id** (string) - Unique identifier for the plan. - **key** (string) - A unique key for the plan. - **product_id** (string) - The ID of the associated product. - **tdsp_duns** (string) - The TDSP DUNS number. - **components** (array) - An array of pricing components for the plan. - **min** (number) - Minimum usage for this component. - **max** (number) - Maximum usage for this component. - **amount** (number) - The price amount. - **multiplicative** (boolean) - Whether the amount is multiplicative. - **compound** (boolean) - Whether the amount is compounded. - **description** (string) - Description of the component. - **tdsp_charge** (boolean) - Indicates if this is a TDSP charge. - **expected_prices** (array) - Calculated prices at different usage levels (only present if `display_usage` is provided). - **usage** (integer) - The usage level in kWh. - **price** (number) - The calculated price per kWh. - **document_links** (array) - Links to important plan documents. - **type** (string) - The type of document (e.g., 'efl', 'yraac', 'tos'). - **link** (string) - The URL to the document. - **disabled** (boolean) - Indicates if the plan is disabled. - **date_created** (string) - The date the plan was created (ISO 8601 format). #### Response Example ```json [ { "_id": "6983780e7e513437e8c06e7f", "key": "txu-simple-rate-24", "product_id": "507f1f77bcf86cd799439099", "tdsp_duns": "957877905", "components": [ { "min": 0, "max": 999999, "amount": 0.089, "multiplicative": true, "compound": false, "description": "Energy Charge" }, { "min": 0, "max": 999999, "amount": 4.95, "multiplicative": false, "compound": false, "description": "Base Charge" }, { "min": 0, "max": 999999, "amount": 0.04199, "multiplicative": true, "compound": false, "description": "CenterPoint Delivery", "tdsp_charge": true } ], "expected_prices": [ { "usage": 500, "price": 0.148 }, { "usage": 1000, "price": 0.136 }, { "usage": 2000, "price": 0.133 } ], "document_links": [ { "type": "efl", "link": "https://example.com/efl.pdf" }, { "type": "yraac", "link": "https://example.com/yraac.pdf" }, { "type": "tos", "link": "https://example.com/tos.pdf" } ], "disabled": false, "date_created": "2024-06-01T00:00:00.000Z" } ] ``` ``` -------------------------------- ### Example ESI ID History Response Source: https://partner.comparepower.com/developers/llms-full.txt A sample JSON response for the ESI ID history endpoint. It details the file information and the data snapshot at the time of the record's creation or modification. ```json [ { "_id": "131aa5f7464b690c5d293b95", "date_created": "2025-12-01T06:00:00.000Z", "job_id": "8f82f1fb5b3bb5e663efebcc", "key": "1008901006120840492100", "file": { "file_name": "CENTERPOINT_DAILY_20251201.csv", "file_link": "", "date": "2025-12-01", "time": "06:00:00", "iso_date_time_string": "2025-12-01T06:00:00.000Z", "iso_date": "2025-12-01T06:00:00.000Z", "tdsp": "CENTERPOINT", "type": "DAILY" }, "data": { "_id": "1008901006120840492100", "esiid": "1008901006120840492100", "address": "816 RICHMOND AVE # 1", "city": "HOUSTON", "state": "TX", "zip_code": "77006", "duns": "957877905", "status": "Active", "premise_type": "Residential", "metered": "Y", "power_region": "ERCOT" } } ] ``` -------------------------------- ### Example ESI ID Search Response Source: https://partner.comparepower.com/developers/llms-full.txt A sample JSON response when searching for ESI IDs by address. It includes details like ESIID, address, and the TDSP DUNS number. ```json [ { "_id": "1008901006120840492100", "esiid": "1008901006120840492100", "address": "816 RICHMOND AVE # 1", "address_overflow": "", "city": "HOUSTON", "state": "TX", "zip_code": "77006", "zip_code_4": "5519", "duns": "957877905", "status": "Active", "premise_type": "Residential", "polr_customer_class": "Residential", "metered": "Y", "meter_read_cycle": "13", "power_region": "ERCOT", "station_code": "MN", "station_name": "MAIN", "switch_hold_indicator": "N", "tdsp_ams_indicator": "AMSM", "settlement_ams_indicator": "Y", "open_service_orders": "", "county": "HARRIS" } ] ``` -------------------------------- ### Get Single ESIID by ID Source: https://partner.comparepower.com/developers/llms-full.txt Retrieve the complete details for a specific ESIID using its unique identifier. This includes address, TDSP information, and meter status. ```APIDOC ## GET /api/esiids/{id} ### Description Get a single ESIID record by its ESI ID. Returns the full record with address, TDSP, meter status, and service details. ### Method GET ### Endpoint `https://ercot.api.comparepower.com/api/esiids/{id}` ### Parameters #### Path Parameters - **id** (string) - Required - The ESI ID (e.g. "1008901006120840492100"). ### Request Example ```bash curl "https://ercot.api.comparepower.com/api/esiids/1008901006120840492100" ``` ### Response #### Success Response (200) - **_id** (string) - Unique identifier for the ESIID record. - **esiid** (string) - The Electric Service Identifier. - **address** (string) - The street address of the service point. - **address_overflow** (string) - Additional address information. - **city** (string) - The city of the service point. - **date_created** (string) - The date the ESIID record was created. - **date_last_modified** (string) - The date the ESIID record was last modified. - **state** (string) - The state of the service point. - **zip_code** (string) - The ZIP code of the service point. - **zip_code_4** (string) - The ZIP+4 code of the service point. - **duns** (string) - The TDSP DUNS number associated with the ESIID. - **status** (string) - The current status of the ESIID (e.g., 'Active'). - **premise_type** (string) - The type of premise (e.g., 'Residential'). - **polr_customer_class** (string) - The customer class for the premise. - **metered** (string) - Indicates if the meter is read ('Y' or 'N'). - **meter_read_cycle** (string) - The meter read cycle number. - **power_region** (string) - The power region (e.g., 'ERCOT'). - **station_code** (string) - The code for the associated power station. - **station_name** (string) - The name of the associated power station. - **switch_hold_indicator** (string) - Indicator for switch holds. - **tdsp_ams_indicator** (string) - AMS indicator for the TDSP. - **settlement_ams_indicator** (string) - AMS indicator for settlement. - **open_service_orders** (string) - Information on open service orders. - **county** (string) - The county of the service point. - **metered_service_type** (string) - The type of metered service. - **metered_service_type_desc** (string) - Description of the metered service type. #### Response Example ```json { "_id": "1008901006120840492100", "esiid": "1008901006120840492100", "address": "816 RICHMOND AVE # 1", "address_overflow": "", "city": "HOUSTON", "date_created": "2021-05-12T15:18:59.195Z", "date_last_modified": "2025-09-05T10:42:51.201Z", "state": "TX", "zip_code": "77006", "zip_code_4": "5519", "duns": "957877905", "status": "Active", "premise_type": "Residential", "polr_customer_class": "Residential", "metered": "Y", "meter_read_cycle": "13", "power_region": "ERCOT", "station_code": "MN", "station_name": "MAIN", "switch_hold_indicator": "N", "tdsp_ams_indicator": "AMSM", "settlement_ams_indicator": "Y", "open_service_orders": "", "county": "HARRIS", "metered_service_type": "", "metered_service_type_desc": "" } ``` ``` -------------------------------- ### Get ESIID Change History Source: https://partner.comparepower.com/developers/llms-full.txt Retrieve the historical changes for a specific ESIID, including creation and modification dates, and the data files associated with those changes. ```APIDOC ## GET /api/esiids/{id}/history ### Description Get the change history for an ESI ID. Shows when the record was created or modified in ERCOT data files. Useful for tracking address or status changes over time. ### Method GET ### Endpoint `https://ercot.api.comparepower.com/api/esiids/{id}/history` ### Parameters #### Path Parameters - **id** (string) - Required - The ESI ID. ### Request Example ```bash curl "https://ercot.api.comparepower.com/api/esiids/1008901006120840492100/history" ``` ### Response #### Success Response (200) - **_id** (string) - Unique identifier for the history entry. - **date_created** (string) - The date and time the history record was created. - **job_id** (string) - Identifier for the job that processed this history entry. - **key** (string) - The ESI ID associated with this history entry. - **file** (object) - Information about the data file related to this history entry. - **file_name** (string) - The name of the data file. - **file_link** (string) - A link to the data file (if available). - **date** (string) - The date of the data file. - **time** (string) - The time of the data file. - **iso_date_time_string** (string) - ISO 8601 formatted date-time string. - **iso_date** (string) - ISO 8601 formatted date string. - **tdsp** (string) - The TDSP associated with the file. - **type** (string) - The type of the data file (e.g., 'DAILY'). - **data** (object) - The ESIID data at the time of the history entry. - **_id** (string) - Unique identifier for the ESIID record. - **esiid** (string) - The Electric Service Identifier. - **address** (string) - The street address of the service point. - **city** (string) - The city of the service point. - **state** (string) - The state of the service point. - **zip_code** (string) - The ZIP code of the service point. - **duns** (string) - The TDSP DUNS number. - **status** (string) - The status of the ESIID at that time. - **premise_type** (string) - The type of premise. - **metered** (string) - Indicates if the meter was read. - **power_region** (string) - The power region. #### Response Example ```json [ { "_id": "131aa5f7464b690c5d293b95", "date_created": "2025-12-01T06:00:00.000Z", "job_id": "8f82f1fb5b3bb5e663efebcc", "key": "1008901006120840492100", "file": { "file_name": "CENTERPOINT_DAILY_20251201.csv", "file_link": "", "date": "2025-12-01", "time": "06:00:00", "iso_date_time_string": "2025-12-01T06:00:00.000Z", "iso_date": "2025-12-01T06:00:00.000Z", "tdsp": "CENTERPOINT", "type": "DAILY" }, "data": { "_id": "1008901006120840492100", "esiid": "1008901006120840492100", "address": "816 RICHMOND AVE # 1", "city": "HOUSTON", "state": "TX", "zip_code": "77006", "duns": "957877905", "status": "Active", "premise_type": "Residential", "metered": "Y", "power_region": "ERCOT" } } ] ``` ``` -------------------------------- ### GET /api/brands Source: https://partner.comparepower.com/developers/llms-full.txt Retrieves a list of energy provider brands. If no parameters are provided, it returns all available brands. The `name` parameter can be used to filter brands by name with a partial match. ```APIDOC ## GET /api/brands ### Description Search for energy provider brands. Returns all brands when called without parameters. ### Method GET ### Endpoint /api/brands ### Query Parameters - **name** (string) - Optional - Filter brands by name (partial match). ### Request Example ```bash curl "https://pricing.api.comparepower.com/api/brands?name=TXU" ``` ### Response #### Success Response (200) - **_id** (string) - Unique identifier for the brand. - **name** (string) - The display name of the brand. - **legal_name** (string) - The legal name of the brand. - **puct_number** (string) - The PUCT number associated with the brand. - **date_created** (string) - The date the brand was created (ISO 8601 format). #### Response Example ```json [ { "_id": "60a1b2c3d4e5f6a7b8c9d0e1", "name": "TXU Energy", "legal_name": "TXU Energy Retail Company LLC", "puct_number": "10004", "date_created": "2023-01-15T00:00:00.000Z" } ] ``` ``` -------------------------------- ### Get Single TDSP by ID Source: https://partner.comparepower.com/developers/llms-full.txt Retrieve a single TDSP by its unique ID. This endpoint is useful for fetching specific TDSP details when the ID is already known. ```bash curl "https://pricing.api.comparepower.com/api/tdsps/957877905" ``` -------------------------------- ### GET /api/esiids/{id}/profile Source: https://partner.comparepower.com/developers/llms-full.txt Retrieves an estimated monthly usage profile for a given ESI ID. This endpoint can optionally accept square footage and year built to improve the accuracy of the usage estimates. ```APIDOC ## GET /api/esiids/{id}/profile ### Description Get a usage profile for an ESI ID. Returns estimated monthly kWh usage (12 months, Jan-Dec). Optionally pass square footage and year built for a more accurate estimate. Use this to pre-fill usage estimates when calculating plan prices. ### Method GET ### Endpoint https://ercot.api.comparepower.com/api/esiids/{id}/profile ### Parameters #### Path Parameters - **id** (string) - Required - The ESI ID. #### Query Parameters - **square_footage** (string) - Optional - Square footage of the home (improves estimate accuracy). - **year_built** (string) - Optional - Year the home was built (improves estimate accuracy). ### Response #### Success Response (200) - **usage** (array) - An array containing 12 estimated monthly kWh values (January through December). - **home_age** (integer) - The estimated age of the home. - **square_footage** (string) - The square footage of the home used for the estimate. - **found_home_details** (boolean) - Indicates if home details were found and used for the estimate. ### Request Example ```bash curl "https://ercot.api.comparepower.com/api/esiids/1008901006120840492100/profile?square_footage=2000&year_built=2005" ``` ### Response Example ```json { "usage": [ 1163, 844, 818, 955, 1342, 1714, 1664, 1756, 1352, 1050, 890, 1019 ], "home_age": 21, "square_footage": "2000", "found_home_details": true } ``` ``` -------------------------------- ### Get Single ESI ID Record Source: https://partner.comparepower.com/developers/llms-full.txt Retrieve the complete record for a specific ESI ID. This provides detailed information including address, TDSP, and meter status. ```bash curl "https://ercot.api.comparepower.com/api/esiids/1008901006120840492100" ``` -------------------------------- ### Get ESI ID Change History Source: https://partner.comparepower.com/developers/llms-full.txt Access the historical changes for an ESI ID, such as creation or modification dates in ERCOT data files. This is useful for tracking changes in address or status over time. ```bash curl "https://ercot.api.comparepower.com/api/esiids/1008901006120840492100/history" ``` -------------------------------- ### Retrieve a single plan by ID Source: https://partner.comparepower.com/developers/llms-full.txt Fetches plan details. Optionally include display_usage query parameters to calculate prices at specific kWh levels. ```bash curl "https://pricing.api.comparepower.com/api/plans/6983780e7e513437e8c06e7f?display_usage=1000" ``` ```json { "_id": "6983780e7e513437e8c06e7f", "key": "txu-simple-rate-24", "product_id": "507f1f77bcf86cd799439099", "tdsp_duns": "957877905", "components": [ { "min": 0, "max": 999999, "amount": 0.089, "multiplicative": true, "compound": false, "description": "Energy Charge" } ], "expected_prices": [ { "usage": 1000, "price": 0.136 } ], "document_links": [ { "type": "efl", "link": "https://example.com/efl.pdf" }, { "type": "yraac", "link": "https://example.com/yraac.pdf" }, { "type": "tos", "link": "https://example.com/tos.pdf" } ], "disabled": false, "date_created": "2024-06-01T00:00:00.000Z" } ``` -------------------------------- ### Fetch Electricity Plans by ZIP Code Source: https://partner.comparepower.com/developers/llms-full.txt Resolves the TDSP for a given ZIP code and retrieves available electricity plans with pricing. ```javascript async function getPlansForZip(zipCode) { // Step 1: Resolve TDSP const tdspRes = await fetch( "https://pricing.api.comparepower.com/api/tdsps?zip_code=" + zipCode ); const tdsps = await tdspRes.json(); if (!tdsps.length) { throw new Error("No TDSP found for ZIP " + zipCode); } // Step 2: Fetch plans with prices const params = new URLSearchParams({ tdsp_duns: tdsps[0].duns_number, current: "true", }); params.append("display_usage", "500"); params.append("display_usage", "1000"); params.append("display_usage", "2000"); const plansRes = await fetch( "https://pricing.api.comparepower.com/api/plans?" + params ); const plans = await plansRes.json(); // Step 3: Return plans with prices and document links return plans.map(plan => ({ id: plan._id, name: plan.key, prices: plan.expected_prices, documents: plan.document_links, })); } // Usage const plans = await getPlansForZip("75208"); console.log(plans); ``` -------------------------------- ### Calculate price breakdown for a plan Source: https://partner.comparepower.com/developers/llms-full.txt Returns the plan with price components applied for a specific usage level. The usage parameter must be an integer. ```bash curl "https://pricing.api.comparepower.com/api/plans/6983780e7e513437e8c06e7f/calculate/1000" ``` ```json [ { "_id": "6983780e7e513437e8c06e7f", "key": "txu-simple-rate-24", "tdsp_duns": "957877905", "components": [ { "min": 0, "max": 999999, "amount": 0.089, "multiplicative": true, "description": "Energy Charge" } ], "expected_prices": [ { "usage": 1000, "price": 0.136 } ] } ] ``` -------------------------------- ### Search Electricity Plans Source: https://partner.comparepower.com/developers/llms-full.txt Retrieve electricity plans with specific filters. Always include current=true when filtering by tdsp_duns and use repeated display_usage keys for price calculations. ```bash curl "https://pricing.api.comparepower.com/api/plans?tdsp_duns=957877905&display_usage=500&display_usage=1000&display_usage=2000¤t=true" ```