Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/southern-california-edison-feature-services-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: SCE DRPEP ArcGIS REST Services Feature Services API
version: '11.1'
summary: Anonymous, key-free Esri ArcGIS REST interface behind Southern California Edison's Distribution Resources Plan External Portal (DRPEP).
description: 'Machine-readable description of the anonymous grid-data API that Southern California Edison serves at `drpep.sce.com`. SCE publishes **no** OpenAPI, no developer portal, and no written API reference for this surface; this document was generated by API Evangelist from live, unauthenticated probes of the service itself (ArcGIS Enterprise 11.1 REST, `f=json`) on 2026-07-27 and from the service, layer, and field descriptors saved verbatim under `arcgis/` in this repository. Every path, parameter, and example below was observed answering anonymously with HTTP 200 - nothing here is aspirational.
The catalog exposes 15 hosted FeatureServers covering 47 feature layers and 11 tables: Integration Capacity Analysis (ICA) circuit segments and their generation/load constraint layers, distribution circuits, substations, the Distribution Deferral Opportunity Report (DDOR), the Grid Needs Assessment (GNA), Locational Net Benefit Analysis (LNBA), Public Safety Power Shutoff (PSPS) boundaries, CPUC fire-threat tiers, transmission projects, available-load and subtransmission heat maps, and load-growth penetration. The ICA circuit-segment layer alone answers 676,467 features.
Read-only: every hosted service advertises `capabilities: Query` (DRP_Transmission_Projects also allows `Extract`). There is no write surface, no API key, and no rate-limit header. The sibling `Utilities` folder on the same server is NOT open - it returns `{"error":{"code":499,"message":"Token Required"}}`.
This spec does not cover SCE Green Button Connect My Data. That interface is real and mandated by CPUC tariff Rule 26, but SCE discloses no base URI, endpoint, or scope publicly; see `authentication/` and the repository review for what is actually known.'
termsOfService: https://www.sce.com/terms-conditions
contact:
name: API Evangelist (generator of this description, not the API operator)
url: https://apievangelist.com
x-generated-by: api-evangelist enrichment pipeline
x-generated-on: '2026-07-27'
x-provenance: api-evangelist-generated from live anonymous probes; NOT published by Southern California Edison
x-source-probes:
- https://drpep.sce.com/arcgis_server/rest/info?f=json
- https://drpep.sce.com/arcgis_server/rest/services?f=json
- https://drpep.sce.com/arcgis_server/rest/services/Hosted?f=json
- https://drpep.sce.com/arcgis_server/rest/services/Hosted/ICA_Layer/FeatureServer?f=json
- https://drpep.sce.com/arcgis_server/rest/services/Hosted/ICA_Layer/FeatureServer/0?f=json
- https://drpep.sce.com/arcgis_server/rest/services/Hosted/ICA_Layer/FeatureServer/0/query?where=1%3D1&returnCountOnly=true&f=json
servers:
- url: https://drpep.sce.com
description: SCE Distribution Resources Plan External Portal (production, anonymous)
tags:
- name: Feature Services
description: The 15 hosted FeatureServers and their layer/table descriptors.
paths:
/arcgis_server/rest/services/Hosted/{serviceName}/FeatureServer:
get:
operationId: getFeatureService
tags:
- Feature Services
summary: Get a feature service descriptor
description: 'Returns the service-level descriptor: its layers and tables, `maxRecordCount` (2,000 or 5,000 depending on the service), supported query capabilities, and spatial reference. Every DRPEP hosted service advertises `capabilities: Query`; `DRP_Transmission_Projects` additionally advertises `Extract`.'
parameters:
- name: serviceName
in: path
required: true
description: Name of a hosted feature service, as returned by `listHostedServices`.
schema:
type: string
enum:
- AVL_LOAD_CAP_TOGGLE
- AVL_LOAD_HEAT_MAP_TOGGLE
- DDOR_Layer
- DRP_PSPS_Layer
- DRP_ScreenL_08202021
- DRP_Transmission_Projects
- Distribution_circuits
- Firemap
- GNA_Layer
- ICA_Layer
- ICA_Tables
- LNBA_Layer
- LOAD_GROWTH_PEN_HTMAP
- MGEP_AVL_LOAD_HEAT_MAP
- SUBTRANS_HEATMAP
example: ICA_Layer
- name: f
in: query
required: false
description: Response format. `json` (Esri JSON), `pjson` (pretty JSON), `geojson` (GeoJSON - verified supported on hosted feature layers), or `html` (the default ArcGIS REST Services Directory page). Always send `f=json` for machine use; without it the service returns HTML.
schema:
type: string
enum:
- json
- pjson
- geojson
- html
default: html
example: json
responses:
'200':
description: Feature service descriptor, or an ArcGIS error envelope for an unknown service.
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureService'
/arcgis_server/rest/services/Hosted/{serviceName}/FeatureServer/{layerId}:
get:
operationId: getFeatureLayer
tags:
- Feature Services
summary: Get a feature layer or table descriptor
description: Returns the layer descriptor including the full field list (name, Esri type, alias), geometry type, drawing info, `maxRecordCount`, and `advancedQueryCapabilities` (pagination, statistics, order-by, distinct are all supported on these layers). The field list is the only field-level documentation SCE provides for DRPEP data.
parameters:
- name: serviceName
in: path
required: true
description: Name of a hosted feature service, as returned by `listHostedServices`.
schema:
type: string
enum:
- AVL_LOAD_CAP_TOGGLE
- AVL_LOAD_HEAT_MAP_TOGGLE
- DDOR_Layer
- DRP_PSPS_Layer
- DRP_ScreenL_08202021
- DRP_Transmission_Projects
- Distribution_circuits
- Firemap
- GNA_Layer
- ICA_Layer
- ICA_Tables
- LNBA_Layer
- LOAD_GROWTH_PEN_HTMAP
- MGEP_AVL_LOAD_HEAT_MAP
- SUBTRANS_HEATMAP
example: ICA_Layer
- name: layerId
in: path
required: true
description: Zero-based id of a layer or table inside the feature service, as returned by `getFeatureService`. See `x-drpep-inventory` in this document for the full 58-entry layer/table map.
schema:
type: integer
minimum: 0
example: 0
- name: f
in: query
required: false
description: Response format. `json` (Esri JSON), `pjson` (pretty JSON), `geojson` (GeoJSON - verified supported on hosted feature layers), or `html` (the default ArcGIS REST Services Directory page). Always send `f=json` for machine use; without it the service returns HTML.
schema:
type: string
enum:
- json
- pjson
- geojson
- html
default: html
example: json
responses:
'200':
description: Layer/table descriptor, or an ArcGIS error envelope.
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureLayer'
components:
schemas:
FeatureService:
type: object
description: Feature service descriptor.
properties:
currentVersion:
type: number
serviceDescription:
type: string
maxRecordCount:
type: integer
capabilities:
type: string
examples:
- Query
- Query,Extract
layers:
type: array
items:
$ref: '#/components/schemas/LayerSummary'
tables:
type: array
items:
$ref: '#/components/schemas/LayerSummary'
LayerSummary:
type: object
properties:
id:
type: integer
name:
type: string
type:
type: string
enum:
- Feature Layer
- Table
geometryType:
type: string
FeatureLayer:
type: object
description: Feature layer or table descriptor, including the field list.
properties:
id:
type: integer
name:
type: string
type:
type: string
geometryType:
type: string
maxRecordCount:
type: integer
objectIdField:
type: string
fields:
type: array
items:
$ref: '#/components/schemas/Field'
advancedQueryCapabilities:
type: object
Field:
type: object
properties:
name:
type: string
alias:
type: string
type:
type: string
description: Esri field type, e.g. esriFieldTypeString.
length:
type: integer
externalDocs:
description: DRPEP portal (Esri Experience Builder app over these services)
url: https://drpep.sce.com/drpep/
x-drpep-inventory:
- service: AVL_LOAD_CAP_TOGGLE
id: 0
name: AVL_LOAD_CAP_FULL_SUBMITTAL
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 128
- service: AVL_LOAD_CAP_TOGGLE
id: 1
name: AVL_LOAD_CAP_FULL_AND_PARTIAL_SUBMITTAL
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 128
- service: AVL_LOAD_HEAT_MAP_TOGGLE
id: 0
name: GRID_RANK_AGGR_FULL
kind: layer
geometryType: esriGeometryPolygon
fieldCount: 6
- service: AVL_LOAD_HEAT_MAP_TOGGLE
id: 1
name: GRID_RANK_AGGR_FULL_PARTIAL
kind: layer
geometryType: esriGeometryPolygon
fieldCount: 6
- service: DDOR_Layer
id: 0
name: DDOR Substations
kind: layer
geometryType: esriGeometryPoint
fieldCount: 33
- service: DDOR_Layer
id: 1
name: DDOR Subtransmission
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 33
- service: DDOR_Layer
id: 2
name: DDOR - Circuits
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 36
- service: DDOR_Layer
id: 3
name: DDOR FGDB DATE TIME
kind: table
geometryType: null
fieldCount: 3
- service: DRP_PSPS_Layer
id: 0
name: PSPS_Subtransmission
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 14
- service: DRP_PSPS_Layer
id: 1
name: PSPS_Circuit
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 16
- service: DRP_ScreenL_08202021
id: 0
name: Sheet1
kind: table
geometryType: null
fieldCount: 3
- service: DRP_Transmission_Projects
id: 0
name: CAISO_APPROVED_POLYGON
kind: layer
geometryType: esriGeometryPolygon
fieldCount: 16
- service: DRP_Transmission_Projects
id: 1
name: UTILITY_APPROVED_POLYGON
kind: layer
geometryType: esriGeometryPolygon
fieldCount: 16
- service: DRP_Transmission_Projects
id: 2
name: CPUC_APPROVED_POLYGON
kind: layer
geometryType: esriGeometryPolygon
fieldCount: 16
- service: Distribution_circuits
id: 0
name: Distribution Circuits
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 11
- service: Firemap
id: 0
name: Tree_Mortality___Tier_1
kind: layer
geometryType: esriGeometryPolygon
fieldCount: 10
- service: Firemap
id: 1
name: CPUC_Fire_Threat_Areas____Tier_2___Elevated
kind: layer
geometryType: esriGeometryPolygon
fieldCount: 10
- service: Firemap
id: 2
name: CPUC_Fire_Threat_Areas____Tier_3___Extreme
kind: layer
geometryType: esriGeometryPolygon
fieldCount: 10
- service: GNA_Layer
id: 0
name: GNA Substations
kind: layer
geometryType: esriGeometryPoint
fieldCount: 31
- service: GNA_Layer
id: 1
name: GNA Subtransmission
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 25
- service: GNA_Layer
id: 2
name: GNA - Circuits
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 39
- service: GNA_Layer
id: 3
name: Circuit Level Planning Assumptions
kind: table
geometryType: null
fieldCount: 23
- service: GNA_Layer
id: 4
name: GNA FGDB DATE TIME
kind: table
geometryType: null
fieldCount: 3
- service: GNA_Layer
id: 5
name: Substation Level Planning Assumptions
kind: table
geometryType: null
fieldCount: 20
- service: ICA_Layer
id: 0
name: ICA - Circuit Segments
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 29
- service: ICA_Layer
id: 1
name: ICA - Circuit Segments, Non-3 Phase
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 16
- service: ICA_Layer
id: 2
name: ICA - Generation Op Flex
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 17
- service: ICA_Layer
id: 3
name: ICA - Generation Protection
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 17
- service: ICA_Layer
id: 4
name: ICA - Generation Steady State Voltage
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 17
- service: ICA_Layer
id: 5
name: ICA - Generation Thermal
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 17
- service: ICA_Layer
id: 6
name: ICA - Generation Voltage Variation
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 17
- service: ICA_Layer
id: 7
name: ICA - Load Steady State Voltage
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 17
- service: ICA_Layer
id: 8
name: ICA - Load Thermal
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 17
- service: ICA_Layer
id: 9
name: ICA - Load Voltage Variation
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 17
- service: ICA_Layer
id: 10
name: ICA - Solar Op Flex
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 17
- service: ICA_Layer
id: 11
name: ICA - Solar PV Static Grid
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 17
- service: ICA_Layer
id: 12
name: ICA - Unavailable Circuit Segments
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 8
- service: ICA_Layer
id: 13
name: ICA - Uniform Generation Op Flex
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 17
- service: ICA_Layer
id: 14
name: ICA - Uniform Generation Static Grid
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 17
- service: ICA_Layer
id: 15
name: ICA - Uniform Load Static Grid
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 17
- service: ICA_Layer
id: 16
name: Substations
kind: layer
geometryType: esriGeometryPoint
fieldCount: 14
- service: ICA_Layer
id: 17
name: RAM - Circuits
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 16
- service: ICA_Layer
id: 18
name: Transmission Circuits
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 6
- service: ICA_Layer
id: 19
name: SCE Service Territory
kind: layer
geometryType: esriGeometryPolygon
fieldCount: 9
- service: ICA_Tables
id: 0
name: DRPEP_FGDB_DATE_TIME
kind: table
geometryType: null
fieldCount: 3
- service: ICA_Tables
id: 1
name: Historical Circuit Load Profile
kind: table
geometryType: null
fieldCount: 12
- service: ICA_Tables
id: 2
name: Historical Substation Load Profile
kind: table
geometryType: null
fieldCount: 9
- service: ICA_Tables
id: 3
name: ICA Single Consolidated Table
kind: table
geometryType: null
fieldCount: 26
- service: ICA_Tables
id: 4
name: Forecasted Circuit Load Profile
kind: table
geometryType: null
fieldCount: 12
- service: LNBA_Layer
id: 0
name: DER Growth Scenario, Planning
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 10
- service: LNBA_Layer
id: 1
name: LNBA Short-term, Planning
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 23
- service: LNBA_Layer
id: 2
name: LNBA Mid-term, Planning
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 23
- service: LNBA_Layer
id: 3
name: LNBA Long-term, Planning
kind: layer
geometryType: esriGeometryPolyline
fieldCount: 23
- service: LNBA_Layer
id: 4
name: LNBA_FGDB_DATE_TIME
kind: table
geometryType: null
fieldCount: 3
- service: LOAD_GROWTH_PEN_HTMAP
id: 0
name: GRID_RANK_AGGR
kind: layer
geometryType: esriGeometryPolygon
fieldCount: 5
- service: MGEP_AVL_LOAD_HEAT_MAP
id: 0
name: GRID_RANK_AGGR_FULL
kind: layer
geometryType: esriGeometryPolygon
fieldCount: 6
- service: MGEP_AVL_LOAD_HEAT_MAP
id: 1
name: GRID_RANK_AGGR_FULL_PARTIAL
kind: layer
geometryType: esriGeometryPolygon
fieldCount: 6
- service: SUBTRANS_HEATMAP
id: 0
name: Subtrans_heatmap
kind: layer
geometryType: esriGeometryPoint
fieldCount: 19