Wolfram|Alpha Simple API Reference

Immediately get simple images of complete Wolfram|Alpha result pages with the Simple API.

Built on the same technology as the Full Results API, the Simple API generates full Wolfram|Alpha output in a universally viewable image format. This API makes it easy to translate free-form linguistic queries into in-depth, formatted results to users with little coding effort. It is implemented in a standard REST protocol using HTTP GET requests.

Although the majority of data available through the Wolfram|Alpha website is also available through these APIs, certain subjects may be restricted by default. To request access to additional topics, contact us. Use of our Simple APIs is subject to the API Terms of Use and Commercial Terms of Use.

Note: The Simple API does not support disambiguation, drilldown, or asynchronous results delivery; it returns only a single, static image. For these advanced features, use the Full Results API.

Getting Started

Signup and Login

To get started, you must register a Wolfram ID and sign in to the Wolfram|Alpha Developer Portal. Upon logging in, go to the "My Apps" tab to start creating your first app.

Obtaining an AppID

Click the “Get an AppID” button to start the app creation process. After a one-time survey about intended usage, the AppID creation dialog will appear. Give your application a name and a simple description to register an AppID. Each application must have its own unique AppID.

Using the Simple API

Sample Query

Now that you have an AppID, you can make your first query. The base URL for queries is:

http://api.wolframalpha.com/v1/simple

Every query requires two pieces of information—an AppID and an input value—in order to be processed correctly. The appid parameter tells your query which AppID to use:

http://api.wolframalpha.com/v1/simple?appid=DEMO

Next, use the i parameter to specify the URL-encoded input for your query. For instance, here is a query for "What airplanes are flying overhead?":

http://api.wolframalpha.com/v1/simple?appid=DEMO&i=What+airplanes+are+flying+overhead%3F

When executed with a valid AppID, this URL will return an image with informational elements relating to the input:

Sample Output

URL Parameters and Options

Using the same RESTful style, you can add parameters to customize output. Since its output often includes a mix of text, images, and layout elements, the Simple API will accept a number of parameters, listed below.

layout

For API types that return full Wolfram|Alpha output, the layout parameter defines how content is presented. The default setting is "divider" (shown in previous queries), which specifies a series of pods with horizontal dividers. The other option, "labelbar", specifies a series of separate content sections with label bar headings:

http://api.wolframalpha.com/v1/simple?appid=DEMO&i=What+airplanes+are+flying+overhead%3F&layout=labelbar
Sample Output

background

This parameter allows you to change the overall background color for visual results. Here is the sample result from above, but with a light blue background (#ADD8E6):

http://api.wolframalpha.com/v1/simple?appid=DEMO&i=What+airplanes+are+flying+overhead%3F&background=ADD8E6
Sample Output

Colors can be expressed as HTML names (e.g. "white"), hexadecimal RGB values (e.g. "00AAFF"), or comma-separated decimal RGB values (e.g. "0,100,200"). You can also add an alpha channel to RGB values (e.g. "0,100,200,200") or specify "transparent" or "clear" for a transparent background. The default background color is white.

foreground

Use this parameter to select a foreground color—either "black" (default) or "white"—for text elements. The foreground parameter is useful for making text more readable against certain background colors. For instance, black text would not show up well against a dark blue background, but setting "foreground=white" makes the text easily visible:

http://api.wolframalpha.com/v1/simple?appid=DEMO&i=What+airplanes+are+flying+overhead%3F&background=193555&foreground=white
Sample Output

fontsize

Specify the display size of text elements in points, with a default setting of 14. Oversized text (i.e. anything too wide to fit inside your "width" setting) will automatically be hyphenated. This is what our sample result looks like with 16-point font:

http://api.wolframalpha.com/v1/simple?appid=DEMO&i=What+airplanes+are+flying+overhead%3F&fontsize=16
Sample Output

width

This parameter specifies the desired width (in pixels) for output images, with a default setting of "500". In order to display text and images optimally, the actual output size may vary slightly. Any text too large to fit will be hyphenated, so it's best to use this in conjunction with the fontsize parameter. Here is the sample result with a 400-pixel width:

http://api.wolframalpha.com/v1/simple?appid=DEMO&i=What+airplanes+are+flying+overhead%3F&width=400
Sample Output

units

Use this parameter to manually select what system of units to use for measurements and quantities (either "metric" or "imperial"). By default, the system will use your location to determine this setting. Adding "units=metric" to our sample query displays the resulting altitudes in meters instead of feet:

http://api.wolframalpha.com/v1/simple?appid=DEMO&i=What+airplanes+are+flying+overhead%3F&units=metric
Sample Output

timeout

This parameter specifies the maximum amount of time (in seconds) allowed to process a query, with a default value of "5". It is primarily used to optimize response times in applications, although it may also affect the number and type of results returned by the Simple API.

http://api.wolframalpha.com/v1/simple?appid=DEMO&i=What+airplanes+are+flying+overhead%3F&timeout=5

Errors

HTTP Status 501

This status is returned if a given input value cannot be interpreted by this API. This is commonly caused by input that is blank, misspelled, poorly formatted or otherwise unintelligible. You may occasionally receive this status when requesting information on topics that are restricted or not covered.

HTTP Status 400

This status indicates that the API did not find an input parameter while parsing. In most cases, this can be fixed by checking that you have used the correct syntax for including the i parameter.

Invalid appid (Error 1)

This error is returned when a request contains an invalid option for the appid parameter. Double-check that your AppID is typed correctly and that your appid parameter is using the correct syntax.

Appid missing (Error 2)

This error is returned when a request does not contain any option for the appid parameter. Double-check that your AppID is typed correctly and that your appid parameter is using the correct syntax.