AEMI API OVERVIEW
What is the AEMI API?
The Amex Application Programming Interface (API) is the tool that lets specialists and market makers stream quotes via AEMI. It consists of a standard set of classes provided as a library. Communication with AEMI via the Amex API occurs as a series of asynchronous requests and replies.
For more information, contact the Amex Help Desk first at aemi-preproduction-support@amex.com or, secondarily, at 212-306-1110.
The diagram below illustrates how a client application uses the Amex API to send and receive messages to and from AEMI.
Back to Top
What platforms does AEMI support?
 |
| Compiler | Platform |
|
| Microsoft Visual C++ .NET (Version 7.1) | Windows™ XP and Windows™ 2000 |
| Sun Studio 10 | Solaris 9 |
| GCC 3.2.3 | Linux AS 4 |
 |
Back to Top
What version of the platform should I be using?
 |
Application Type |
Operating System |
Event Loop |
Header File |
Link Library |
Dynamic Load Library |
Must pass Windows handle to API |
Must call Session::Run() |
|
| Console Application | Linux | Managed by API | AmexAPI.h | libamexapi.a | libamexapi.so | No | Yes |
| GUI (worker API running in a worker thread) | Windows | Managed by API | AmexAPI.h | AmexAPI.lib | AmexAPI.dll | No | Yes |
| Console Application | Windows | Managed by API | AmexAPI.h | AmexAPI.lib | AmexAPI.dll | No | Yes |
 |
Back to Top
What is the Customer Test Environment (CTE)?
The CTE for API testing is in a non-automated, one-on-one staging environment for customers streaming quotes via AEMI. It is available via secured Internet access and is equipped with server redundancy. All CTE testing is conducted under the direction of the Amex's Quality Assurance department. The system supports eight trading sessions: Pre-Open, Opening Pair Off, Regular Trading, Closing, Cash Closing, Post-Close, Halt and Re-Opening Pair Off.
Back to Top
What does the Customer Test Environment (CTE) offer?
The CTE allows you to stream in quotes to AEMI for Equities and Exchange Traded Funds (ETFs). (Options quotes are not available via AEMI at present.)
Back to Top
Are there any forms that I need to fill out before beginning development of an AEMI proprietary application?
Members must first sign a non-disclosure agreement (NDA) available by e-mailing aemi-preproduction-support@amex.com. Access to Amex documentation and code base is prohibited until a signed NDA is received by the Amex. Fax the completed NDA form to 212-306-1510, and mail a hard copy to Kevin Sweeney, Amex, 86 Trinity Place, New York, NY 10006.
In addition, once the NDA is approved, you must submit a CTE Connectivity Provisioning form, also available at aemi-preproduction-support@amex.com. E-mail the completed form back to the same address.
Back to Top
What documentation do I need to start developing against the CTE?
You need the following documents, available via the Amex Help Desk at aemi-preproduction-support@amex.com, or secondarily, at 212-306-1110:
- Amex API Development Guide v. 1.09
- Amex API Development Guide v. 1.12.
- API Connectivity Guide v. 0.5
- Amex API Certification Guide Criteria v. 0.02
- CTE Connectivity Provisioning Form
How do I acquire a test badge and symbols?
Contact the Amex Help Desk first at aemi-preproduction-support@amex.com or, secondarily, at 212-306-1110.
Back to Top
CERTFICATION AND CONNECTIVITY GUIDELINES
What is the process for certification and connectivity with the CTE?
The Amex provides a CTE for client API testing and certification. Before any client application can connect to and use the AEMI production system, it must pass an Amex certification process using the CTE.
Certification confirms that the client application using the API conforms to the minimum Amex requirements with respect to design, implementation and quality assurance (testing). It gives both the Amex and the client a reasonable level of assurance that the two applications can communicate reliably without jeopardizing the stability of AEMI.
Once certified, the client application is permitted to connect to the AEMI production environment to perform trading-related functionality. No client application is permitted to connect to the AEMI production environment without successfully passing the appropriate certification. This process entails:
- developing an application and performing unit testing to ensure that all major functions perform as required.
- performing integration testing using the Customer Testing Environment (CTE) provided by Amex.
- contacting the Amex API certification support team to schedule a date and time when certification can take place.
- executing and passing all certification scripts.
- submitting appropriate log files to Amex for verification.
- an Amex review of certification results and logs to decide if the client application has passed or another iteration of certification is required.
The following diagram illustrates the basic steps of certification:
Upon certification, you are automatically configured for the production environment. For more information about the configuration file, see the AMEX API Development Guide v. 1.12, available via the Amex Help Desk first at aemi-preproduction-support@amex.com or, secondarily, at 212-306-1110.
Back to Top
How does my firm set up network connectivity to the CTE?
For details, contact the Amex Help Desk first at aemi-preproduction-support@amex.com or, secondarily, at 212-306-1110.
Back to Top
How do I configure the API for CTE?
For details, contact the Amex Help Desk first at aemi-preproduction-support@amex.com or, secondarily, at 212-306-1110.
Back to Top
How do I complete connectivity?
To complete connectivity, you must fill out and submit a CTE Connectivity Provisioning form, available from aemi-preproduction-support@amex.com. E-mail the completed form back to the same address.
Back to Top
TESTING
Where is the API testing tool download? Where do I get API code and associated documentation?
Contact the Amex Help Desk first at aemi-preproduction-support@amex.com or, secondarily, at 212-306-1110, and they will send you the appropriate documents.
Back to Top
What are the hours of operation for the Customer Test Environment (CTE)?
The testing environment is supported from 8 a.m. - 5 p.m. ET daily, excluding holidays. The Amex reserves the right to extend or reduce these hours. CTE testing is scheduled by appointment. For extra-hours testing and support, e-mail aemi-preproduction-support@amex.com.
Back to Top
Can you provide me with a procedural checklist that outlines the AEMI certification and connectivity process?
Step 1: Make Connectivity Preparations
- Review a copy of the AMEX API Development Guide v. 1.12, available via the Amex Help Desk first at aemi-preproduction-support@amex.com or, secondarily, at 212-306-1110.
- Complete the Access Services order form and fax it to Subscriber Services.
- Inform the Amex that you are interested in API development by contacting the Amex Help Desk at 212-306-1110. Be prepared to provide business, technical and network support contact information.
- Verify with the Help Desk that you have a user name and password.
Step 2: Develop Your Custom Front-End
Step 3: Conduct Connectivity Testing
- Schedule connectivity testing by contacting the Amex Help Desk first at aemi-preproduction-support@amex.com or, secondarily, at 212-306-1110.
- Review the Amex API Certification Guide.
- Schedule an appointment to certify against the CTE.
- Conduct connectivity testing using the certification checklist of required tasks provided by the Help Desk.
- Report testing results to the Amex.
- Receive confirmation from the Amex that connectivity testing in the test environment was successful.
Contact the Amex Help Desk if you have any problems during the installation or testing process.
Back to Top
What are the key dates for AEMI implementation?
 |
| 07/24/06 (tentatively) | CTE available for customer testing |
| 10/02/06 | First stocks trading on AEMI (with rule approval by the SEC) |
| 02/05/07 | All Amex stocks trading on AEMI |
 |
Back to Top
TROUBLE REPORTING
What are the important contact numbers for trouble reporting?
Back to Top
How do I prepare for problem reporting?
Before calling the Amex Help Desk, make sure you have your contact details and the following information:
- Username/badge
- Instrument (equity or ETF)
- Time problem occurred
- Description of the problem
- Software version number
- Error codes and descriptions
- Test case number(s)
|
- Specific call used
- Logs of incoming and outgoing messages
- Market role (market maker, specialist, ISV - independent software vendor - or propietary developer)
|
Back to Top
|