Wolfram|Alpha Full Results API

The Full Results API provides full programmatic access to all Wolfram|Alpha capabilities, including disambiguation, drilldown, asynchronous delivery, and results in multiple formats (XML, JSON). It supports customizable pod selection, location-aware queries, and display formatting.

OpenAPI Specification

wolfram-alpha-full-results-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Wolfram|Alpha Full Results API
  description: >-
    The Wolfram|Alpha Full Results API provides comprehensive programmatic
    access to all Wolfram|Alpha capabilities. It supports disambiguation,
    drilldown, asynchronous delivery, and returns results in XML or JSON
    with customizable pod selection, location-aware queries, and display
    formatting controls. Requires an AppID from the Wolfram|Alpha Developer
    Portal.
  version: '2.0'
  contact:
    name: Wolfram|Alpha Developer Support
    url: https://developer.wolframalpha.com/
  termsOfService: https://products.wolframalpha.com/api/documentation
  x-generated-from: documentation
servers:
- url: https://api.wolframalpha.com/v2
  description: Wolfram|Alpha Full Results API v2
security:
- AppID: []
tags:
- name: Queries
  description: Submit natural language queries for full computational results
paths:
  /query:
    get:
      operationId: queryFullResults
      summary: Wolfram|Alpha Submit a Full Results Query
      description: >-
        Submit a free-form natural language query to the Wolfram|Alpha Full
        Results API. Returns results in XML (default) or JSON with complete
        pod data, disambiguations, drilldowns, assumptions, and formatted
        mathematical/scientific output. Supports asynchronous delivery for
        long-running computations.
      tags:
      - Queries
      parameters:
      - name: appid
        in: query
        required: true
        description: Wolfram|Alpha AppID for authentication.
        schema:
          type: string
          example: DEMO-APP-ID
        example: DEMO-APP-ID
      - name: input
        in: query
        required: true
        description: URL-encoded natural language query string.
        schema:
          type: string
          example: integrate x^2 from 0 to 1
        example: integrate x^2 from 0 to 1
      - name: output
        in: query
        required: false
        description: Response format. Use json for JSON output; default is XML.
        schema:
          type: string
          enum: [xml, json]
          example: json
        example: json
      - name: format
        in: query
        required: false
        description: >-
          Comma-separated list of content formats to include in results:
          image, plaintext, mathml, minput, moutput, cell, sound, wav.
        schema:
          type: string
          example: plaintext,image
        example: plaintext,image
      - name: includepodid
        in: query
        required: false
        description: Include only pods with these IDs (comma-separated).
        schema:
          type: string
          example: Result
        example: Result
      - name: excludepodid
        in: query
        required: false
        description: Exclude pods with these IDs (comma-separated).
        schema:
          type: string
        example: '500123'
      - name: podtitle
        in: query
        required: false
        description: Include only pods whose title matches this pattern.
        schema:
          type: string
        example: Example Name
      - name: podindex
        in: query
        required: false
        description: Include only pods at these ordinal positions (comma-separated).
        schema:
          type: string
        example: string-value
      - name: scanner
        in: query
        required: false
        description: Include only pods generated by specific scanners.
        schema:
          type: string
        example: string-value
      - name: async
        in: query
        required: false
        description: Use asynchronous delivery for long-running computations.
        schema:
          type: string
          enum: ['true', 'false']
        example: 'true'
      - name: location
        in: query
        required: false
        description: Location name for geographically relevant results.
        schema:
          type: string
          example: New York, NY
        example: New York, NY
      - name: latlong
        in: query
        required: false
        description: Latitude and longitude for location-aware results.
        schema:
          type: string
          example: 40.71,-74.00
        example: 40.71,-74.00
      - name: ip
        in: query
        required: false
        description: IP address for location detection.
        schema:
          type: string
        example: string-value
      - name: units
        in: query
        required: false
        description: Measurement system. Values are metric or imperial.
        schema:
          type: string
          enum: [metric, imperial]
        example: metric
      - name: width
        in: query
        required: false
        description: Width in pixels for image results. Default is 500.
        schema:
          type: integer
          example: 500
        example: 500
      - name: maxwidth
        in: query
        required: false
        description: Maximum width in pixels for images.
        schema:
          type: integer
        example: 1
      - name: mag
        in: query
        required: false
        description: Magnification factor for images.
        schema:
          type: number
        example: 10.5
      - name: timeout
        in: query
        required: false
        description: Maximum processing time in seconds. Default is 5.
        schema:
          type: integer
          example: 5
        example: 5
      - name: assumption
        in: query
        required: false
        description: Assumption values to refine query interpretation.
        schema:
          type: array
          items:
            type: string
        example:
        - string-value
      responses:
        '200':
          description: Successful response with Wolfram|Alpha results.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FullResultsResponse'
              examples:
                QueryFullResults200Example:
                  summary: Default queryFullResults 200 response
                  x-microcks-default: true
                  value:
                    queryresult:
                      success: true
                      error: false
                      numpods: 2
                      datatypes: Math
                      timing: 0.812
                      pods:
                      - title: Input
                        scanner: Identity
                        id: Input
                        position: 100
                        subpods:
                        - plaintext: integrate x^2 from 0 to 1
                      - title: Result
                        scanner: Integral
                        id: Result
                        position: 200
                        primary: true
                        subpods:
                        - plaintext: 1/3
            application/xml:
              schema:
                type: string
              examples:
                queryFullResults200Example:
                  summary: Default queryFullResults 200 response
                  x-microcks-default: true
                  value: string-value
        '400':
          description: Bad request - required parameters missing.
        '403':
          description: Invalid or missing AppID.
        '501':
          description: Input cannot be interpreted by Wolfram|Alpha.
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  securitySchemes:
    AppID:
      type: apiKey
      in: query
      name: appid
      description: Wolfram|Alpha AppID passed as query parameter.
  schemas:
    FullResultsResponse:
      type: object
      title: FullResultsResponse
      description: JSON wrapper for Wolfram|Alpha Full Results API response.
      properties:
        queryresult:
          type: object
          description: Top-level query result container.
          properties:
            success:
              type: boolean
              description: Whether the query was successfully interpreted.
              example: true
            error:
              type: boolean
              description: Whether an error occurred during processing.
              example: false
            numpods:
              type: integer
              description: Number of result pods returned.
              example: 2
            datatypes:
              type: string
              description: Categories of data types included in the results.
              example: Math
            timing:
              type: number
              description: Processing time in seconds.
              example: 0.812
            pods:
              type: array
              description: Array of result pods containing computed data.
              items:
                $ref: '#/components/schemas/Pod'
          example:
            success: true
            error: false
            numpods: 2
            datatypes: Math
            timing: 0.812
            pods:
            - string-value
    Pod:
      type: object
      title: Pod
      description: A single result section (pod) from Wolfram|Alpha.
      properties:
        title:
          type: string
          description: Human-readable title for this pod.
          example: Result
        scanner:
          type: string
          description: Internal scanner that generated this pod.
          example: Integral
        id:
          type: string
          description: Pod identifier for filtering.
          example: Result
        position:
          type: integer
          description: Ordering position in the result set.
          example: 200
        primary:
          type: boolean
          description: Whether this is the primary result pod.
          example: true
        subpods:
          type: array
          description: Sub-results within this pod.
          items:
            $ref: '#/components/schemas/Subpod'
          example:
          - string-value
    Subpod:
      type: object
      title: Subpod
      description: A sub-result within a Wolfram|Alpha pod.
      properties:
        plaintext:
          type: string
          description: Plain text representation of the result.
          example: 1/3
        img:
          type: object
          description: Image representation of the result.
          properties:
            src:
              type: string
              format: uri
              description: URL of the result image.
            alt:
              type: string
              description: Alt text for the result image.
            width:
              type: integer
            height:
              type: integer
          example:
            src: https://example.com/path
            alt: string-value
            width: 1
            height: 1