Horizons System
About Horizons
The JPL Horizons on-line solar system data and ephemeris computation service provides access to key solar system data and flexible production of highly accurate ephemerides for solar system objects ( loading… ). ( unable to load body counts… please try later ). ([[ data.ast.totalFormatted ]] asteroids, [[ data.com.totalFormatted ]] comets, [[ data.sat.count ]] planetary satellites {[[ data.sat.note ]]}, [[ data.planet.count ]] planets, the Sun, L1, L2, select spacecraft, and system barycenters). Horizons is provided by the Solar System Dynamics Group of the Jet Propulsion Laboratory.
Documentation is available via the “Manual” tab above. Available time-spans for objects provided by Horizons can be viewed via the “Time Spans” tab above. When requesting an ephemeris for a specific object, you should ensure the requested time(s) are within the available time-span for that object.
The Horizons system can be accessed via a variety of interfaces: web, command-line, email, and an API. Each interface is described below.
Web Interface
The web-interface to Horizons is available via the “App” tab above. New users are encouraged to use the tutorial and reference the manual when needed.
Providing nearly all capabilities of the primary command-line interface, it does not provide the following.
- Small-body Population Searches (use the Small-Body Database Query Tool as an alternative).
- Custom Close-Approach Tables
Command-Line Interface
The command-line (primary) interface to Horizons can be accessed directly by connecting to “horizons.jpl.nasa.gov” via port 6775. This will initiate a text-only “VT100” terminal command-line session that accesses all Horizons functions. You will be taken through a series of prompts that will ask you questions needed to generate the desired information. To initiate such an interactive session from a UNIX/LINUX system terminal, type the following:
telnet horizons.jpl.nasa.gov 6775
Once connected, type ?
from any prompt for help.
Most MacOS and Windows telnet client programs have a dialog box in which the port number (6775) can be entered. If after connecting to “horizons.jpl.nasa.gov” you are prompted for a login name (not necessary for Horizons), it means the port 6775 request was not passed along by the software on your end. Some Windows terminal software does not fully implement the telnet protocol and does not send port numbers, even if you enter them.
Email Interface
The Horizons system can be accessed using email to submit batch-style input files. Instructions on how to access the email server, including a complete detailed example, is available by sending an email message to horizons@ssd.jpl.nasa.gov with the subject “BATCH-LONG”. You can also access instructions via this link.
IMPORTANT: Please be sure your email client is sending content as plain ASCII text. Failure to do so may result in no response from the system or an error message, even when your job-content appears perfect from within your email client. Modern graphical e-mail systems often insert hidden font and formatting codes that Horizons cannot interpret. A helpful guide to suitably configure some email clients for plain-text is available via this link. However, e-mail requests may now be most practical for those working in a UNIX/Linux/MacOS programmatic command-line and text editor environment.
API
The Horizons system can be accessed using an API. Instructions for using the API are available via the API server. The API is useful for programatic control of the Horizons system.