i-Hedge™ API Definitions

For Data Exchange with SPP Customers

Table Of Contents

Table Of Contents......

1Introduction......

1.1Revision History

1.2Purpose

2API Definitions......

2.1Market API

2.2TCR Auction API

2.3ARR Nomination API

2.4Downloads API

2.5Secondary Markets API

1Introduction

1.1Revision History

Date / Version / Description / Author
10/13/2011 / .1 / Draft Creation / Wendy Reynolds
10/28/2011 / .2 / Updates based on interim delivery dates for API specifications from Nexant / Wendy Reynolds
10/31/2011 / 1.0 / Updated Introduction, added DRAFT watermark and copyright. / Wendy Reynolds

1.2Purpose

This is aDRAFT document;none of the information should be considered ‘FINAL’as Marketplace design is still underway. The purpose of this document is to give members a forward look at the Nexant i-HEDGE™TCR System interfaces until more detailed information is available. This document should serve only as a planning tool. In this document, only the high level API definitions are described without considering the actual message structure. This document also indicates timeframes when more detailed interface documentation, including WSDLs, XSDs, and Data Exchange Guides, will be available to market participants.

2API Definitions

The SOAP 1.1 based Web Service provides a programmatic means of interacting with the MUI Subsystem of the Nexant i-HEDGE TCR System. The interface is backed by XML Schema definitions (XSDs). The input SOAP requests and the corresponding SOAP responses adhere to the defined XSD. The error responses containing the validation error messages would be provided as SOAP Fault messages following the standard SOAP based communication mechanism.

In general, all the operations will have a success and an error response messages backed by an XSD.

  • Success - A message along with any uniquely generated IDs are provided as the response
  • Error - A message along with invalid requests and detailed error message are provided as the response. The error message would match with the MUI Web interface error report in its content

2.1Market API

This API provides generic information about the market.

  • getAllOpenAuctionMarkets() (API documentation to be delivered to SPP in March 2012)

This API is for retrieving the open auction market(s). An Auction market is considered open when there is at least one product to which MPs can submit their bids/offers/self-converts.

  • getAllClosedAuctionMarkets() (API documentation to be delivered to SPP in March 2012)

This API is for retrieving the closed auction market(s). An Auction market is considered closed when all the products and all the applicable rounds are posted.

  • getAllOpenAllocationMarkets() (API documentation to be delivered to SPP in December 2011)

This API is for retrievingthe open allocation market(s). An Allocation market is considered open when there is at least one product to which MPs can submit their nominations.

  • getAllClosedAllocationMarkets()(API documentation to be delivered to SPP in December 2011)

This API is for retrievingthe closed allocation market(s). An Allocation market is considered close when all the products and all the applicable rounds are posted.

  • getMarketInfo(market identifier)(API documentation to be delivered to SPP in December 2011)

This API is for retrieving all the relevant market data - bidding window, current active round, market periods, data publish date and post results date. The above methods provide the interface to get the unique identifier of a market which is passed to retrieve the specific market information.

2.2TCR Auction API

This section addresses the data objects for TCR Bids/Offers and ARR Self-conversion. The API documentation for this functionality will be delivered to SPP in March of 2012.

  • createPortfolio(portfolio name, market identifier, period identifier, round identifier, portfolio data)

This API is for creating a portfolio and saving it to the data store. This operation requires a unique portfolio name to be specified. In future transactions related to the portfolio, the portfolio name will be used to uniquely identify it. If the portfolio creation operation fails, the response will contain the violating bids/offers/self-converts.

  • downloadPortfolio(portfolio name)

This API is for downloading an existing portfolio.

  • submitPortfolio(portfolio name)

This API is for submitting an already saved portfolio to the market/period/round associated during the creation process.

  • isPortfolioSubmissionValid(portfolio name)

This API is for checking the status of a portfolio any time after it’s successfully submitted. Since the credit check is an asynchronous process, the TCR system will wait for the response from the Credit system. The client has to infer whether the portfolio submission is valid by inferring from the message response.

  • retractSubmittedPortfolio(portfolio name)

This API is for retracting an earlier successfully submitted portfolio.

  • removePortfolio(portfolio name)

This API is for removing an existing (earlier successfully saved) portfolio provided it’s not in the submitted state or waiting on the credit approval.

2.3ARR Nomination API

This section addresses the data objects for ARR Nominations. The API documentation for this functionality will be delivered to SPP in January of 2012.

  • downloadCandidateARRs(market identifier, period identifier, round identifier)

This API is for downloading the eligible Candidate ARRs for the specific market, period and round.

  • submitNominations(market identifier, period identifier, round identifier, nomination data)

This API is for submitting the nomination data to the specific market, period and round. Nominations can be submitted multiple times and each submission always overwrites the previous value based on the Candidate ARR Id.

2.4Downloads API

This section addresses the data objects for report downloads, which will include Transmission Service Requests data. API documentation for the allocation related download functionality will be delivered to SPP in December of 2011. API documentation for the auction related download functionality will be delivered to SPP in January 2012. API documentation for the secondary market download functionality will be delivered to SPP in March of 2012.

  • getDownloadDataInfo()

This API is for retrieving the data identifier for all of the available public and private download data types. The identifier can be for download just the required data.

  • getPublicDownloadData(market identifier, round identifier, data identifier)

This API is for retrieving the specific data in a zipped format.

  • getPrivateDownloadData(market identifier, round identifier, data identifier)

This API is for retrieving the specific data in a zipped format.

  • getAllPublicDownloadData(market identifier, round identifier)

This API is for retrieving all the public data elements for the requested market and round (if applicable) in a zipped format.

  • getAllPrivateDownloadData(market identifier, round identifier)

This API is for retrieving all the private data elements for the requested market and round (if applicable) in a zipped format.

2.5Secondary Markets API

This section addresses the data objects for Secondary Market Trades. API documentation for this functionality will be delivered to SPP in March of 2012.

  • postSMPublicBuyRequest(Source, Sink, MW, TOU, Start Date, End Date, Contact Information)

This API is for posting a Buy request that’s viewable by all MPs. On successful request, the Request Identifier will be issued.

  • postSMPrivateBuyRequest(MP, Source, Sink, TOU, MW, Start Date, End Date, Contact Information)

This API is for posting a Buy request that’s viewable only by the selected MP. On successful request, the Request Identifier will be issued.

  • postSMPublicSellRequest(Source, Sink, TOU, MW, Start Date, End Date, Contact Information)

This API is for posting a Sell request that’s viewable by all MPs. On successful request, the Request Identifier will be issued.

  • postSMPrivateSellRequest(MP, Source, Sink, TOU, MW, Start Date, End Date, Contact Information)

This API is for posting a Sell request that’s viewable only by the selected MP. On successful request, the Request Identifier will be issued.

  • sendSMBuyResponse(Request Identifier, Contact Information)

This API is for sending a response that viewable only by the MP who originated the request. On successful response, the Response Identifier will be issued.

  • sendSMSellResponse(Request Identifier, Contact Information)

This API is for sending a response that viewable only by the MP who originated the request. On successful response, the Response Identifier will be issued.

  • isSecondaryMarketTradeValid(Request Identifier)

This API is for checking the status of a secondary market trade any time after it is successfully consummated. Since Credit check is asynchronous process, the TCR system will wait for the response from the Credit system. The client has to infer whether the secondary market trade is valid by inferring from the message response.

  • isSecondaryMarketTradeValid(Response Identifier)

This API is for checking the status of a secondary market trade any time after it is successfully consummated. Since Credit check is asynchronous process, the TCR system will wait for the response from the Credit system. The client has to infer whether the secondary market trade is valid by inferring from the message response.

i-Hedge™ API Definitions10/31/2011Page 1 of 9

Version 1.0

© 2011 Southwest Power Pool, Inc. This document contains intellectual property and proprietary information owned by Southwest Power Pool, Inc. All Rights Reserved.