ScriptX logotype
  • Getting started
  • Documentation
  • Samples
  • Pricing
Free Trial Downloads
  • Home
  • Getting started
  • Documentation
  • Samples
  • Pricing
Developers ›  Knowledge Bank ›  Technical Reference ›  ScriptX.Services ›  Web ServiceAPI Reference ›  Service Description ›  /api (GET)

/api (GET)

Description

Returns descriptive detail about the implementation of ScriptX.Services.

Note that this API is version-less. Simply GET /api from the server. For forwards compatibility code should assume that the object returned may contain more values than at the time code was written.

Applies to:

  • ScriptX.Services for Cloud
  • ScriptX.Services for On-Premise Devices (Authorisation header is ignored)
  • ScriptX.Services for Windows PC

Response model


{
    ServiceDescription {
        serviceClass (integer): 1 = Cloud, 2 = OnPremise, 3 = WindowsPC ,
        currentAPIVersion (string),
        serviceVersion (Version),
        serverVersion (Version),
        serviceUpgrade (Version, optional),
        availablePrinters (Array[string], optional),
        printHTML (boolean, optional),
        printPDF (boolean, optional),
        printDIRECT (boolean, optional)
    }

    Version {
        major (integer),
        minor (integer),
        build (integer),
        revision (integer),
        majorRevision (integer),
        minorRevision (integer)
    }
}

ServiceDescription:
serviceClass (integer, optional)
Describes the class of service availble.
1 Public Cloud - prints to file only (PDF/XPS).
2 On Premise - prints to printers both available to the server device and configured to be available.
3 For Windows PC - prints to any printer available to the Windows PC device.
currentAPIVersion (string)
The latest API version implemented (currently "v1").
serviceVersion (Version)
The version of the service server.
serverVersion (Version)
The version of ScriptX Server in use by ScriptX.Services.
serviceUpgrade (Version, optional)
If a newer version of the service server is available, its version.
availablePrinters (Array[string], optional),
An array of the names of all printer devices available on the print server.
printHTML (boolean, optional)
True iff the service implements the printHTML api.
printPDF (boolean, optional)
True iff the service implements the printPDF api.
printDIRECT (boolean, optional)
True iff the service implements the printDirect api.
Version:
major (integer),
The major version number - increments on improvements and/or additions which include breaking changes.
minor (integer),
The minor version number - increments on improvements and/or additions which do not break current code.
build (integer),
The build number - increments with bug fixes.
revision (integer),
Internal revisions on a build - no relevance.
majorRevision (integer),
Random - do not use.
minorRevision (integer),
Random - do not use.

Example usage



Request

<h5>Response <span id="response-status"></span></h5>
<textarea id="response" readonly="readonly" rows="3" class="codefont"></textarea>
<h5>Response headers</h5>
<textarea id="headers" readonly="readonly" rows="3" class="codefont"></textarea>


document.addEventListener("DOMContentLoaded", function() {
    document.getElementById('btn_runcode').addEventListener('click', function() { callServer(); });
});

function callServer() {

    document.getElementById('response-status').textContent = "(waiting)";
    const apiUrl = "/api/v1/";

    const headers = new Headers({
        "Authorization": "Basic " + btoa("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" + ":"),
        "Content-Type": "application/json"
    });
    
    fetch(apiUrl, { method: "GET", headers: headers })
    .then(response => {
        if (!response.ok) {
            throw new Error('Network response was not ok: ' + response.statusText);
        }
        document.getElementById('response-status').textContent = 
            '(status: ' + response.status + ' ' + response.statusText + ')';
        return response.json().then(data => {
            // show JSON response in textarea element
            document.getElementById('response').value = JSON.stringify(data, null, "  ");

              // do something with the ScriptX.Services information
              console.log('Service version: ' + data.serviceVersion);
            return response.headers;
        });
    })
    .then(headers => {
        // show response headers in textarea element
        let headersText = "";
        for (let pair of headers.entries()) {
            headersText += `${pair[0]}: ${pair[1]}\n`;
        }
        document.getElementById('headers').value = headersText;
    })
    .catch(error => {
        document.getElementById('response-status').textContent = '(error: ' + error.message + ')';
        document.getElementById('response').value = "Failed to fetch data.";
    });

}





Response 
Response headers
  • Knowledge Bank
  • 'How To' Guides
    • ScriptX.Services
      • Introduction
      • Getting started
      • Evaluate with modern code
      • Maintaining investment in current code
        • Stage 1: Adding UI
        • Stage 2: Printing with ScriptX.Services
        • Stage 3: Summary and review
        • Stage 4: Error reporting
        • Stage 5: Prompted printing
        • Stage 6: Preparing for advanced uses
        • Stage 7: WaitForSpoolingComplete
        • Stage 8: Recommendations for some common issues
      • Printing with the API
      • MeadCoScriptXJS Library
      • Installing ScriptX.Services
        • For Windows PC
        • For On Premise Devices hosted on Windows Server
        • For On Premise Devices hosted on Windows 10/11
        • Configure options For On Premise Devices
        • Cloud
      • Orchestrator
      • Debugging
      • License deployment
        • For Windows PC
        • For On Premise Devices
      • Samples
        • Configure for Windows PC
        • Configure for On Premise
        • Configure for Cloud
    • Security Manager
      • Deploying a license or revision
    • ScriptX.Add-on
      • Introduction
      • Installing ScriptX on client PCs
      • Basic printing with ScriptX
      • Advanced printing features
      • Backwards compatibility
      • How to check if ScriptX is installed
      • License deployment
      • Quick start with Visual Studio
        • ASP.NET MVC
        • ASP.NET Web Forms
      • Nuget Packages
        • MeadCoScriptXJS Library
        • Installer helpers
        • ASP.NET WebForms Controls
        • Helpers for ASP.NET MVC
      • Client-side printing samples
  • Technical Reference
    • ScriptX.Services
      • Web service API
        • Service Description
          • (GET)
        • Licensing
          • licensing (GET)
          • licensing (POST)
          • licensing/ping (GET)
        • Printer
          • settings (GET)
          • current (GET)
          • current (PUT)
          • connection (PUT)
          • connection (DELETE)
        • PrintHtml
          • settings (GET)
          • deviceinfo (GET)
          • htmlPrintDefaults (GET)
          • print (POST)
          • status (GET)
          • download (GET)
          • canceljob (PUT)
        • PrintPdf
          • print (POST)
          • status (GET)
          • download (GET)
        • PrintDirect
          • print (POST)
      • Orchestrator API
        • v1
          • GET
        • v2
          • PUT
          • GET
      • ScriptX.Services compatibility roadmap
    • Security Manager
      • How it works
      • License Expiry
      • Testing for a valid license
      • About the license file (.mlf)
        • LICENSE
        • APPLICENSE
        • TITLE
        • DOMAINS
        • DOMAIN
        • PERMISSION
      • API
        • Apply
        • License
        • result
        • validLicense
    • ScriptX.Add-on
      • factory
        • baseUrl
        • ComponentVersionString
        • IsUniqueIDAvailable
        • OnDocumentComplete
        • relativeUrl
        • ResetUniqueID
        • ScriptXVersion
        • SecurityManagerVersion
        • Shutdown
        • UniqueID
      • printing
        • AddPrinterConnection
        • BatchPrintPDF
        • BatchPrintPDFEx
        • bottomMargin
        • collate
        • copies
        • currentPrinter
        • DefaultPrinter
        • disableUI
        • duplex
        • duplex2
        • EnumJobs
        • EnumPrinters
        • footer
        • GetJobsCount
        • GetMarginMeasure
        • header
        • headerFooterFont
        • IsSpooling
        • IsTemplateSupported
        • leftMargin
        • onafterprint
        • onbeforeprint
        • onbeforeunload
        • onpagesetup
        • onuserpagesetup
        • onuserprint
        • onuserprintpreview
        • orientation
        • OwnQueue
        • pageHeight
        • PageSetup
        • pageWidth
        • paperSize
        • paperSource
        • paperSource2
        • portrait
        • Preview
        • Print
        • printBackground
        • printer
        • PrintHTML
        • PrintHTMLEx
        • PrintPDF
        • PrintSetup
        • printToFileName
        • RemovePrinterConnection
        • rightMargin
        • SetMarginMeasure
        • SetPageRange
        • SetPreviewZoom
        • SetPrintScale
        • Sleep
        • templateURL
        • topMargin
        • TotalPrintPages
        • unprintableBottom
        • unprintableLeft
        • unprintableRight
        • unprintableTop
        • WaitForSpoolingComplete
      • printerControl
        • attributes
        • Bins
        • Forms
        • isLocal
        • isNetwork
        • isShared
        • Jobs
        • location
        • name
        • Pause
        • port
        • Purge
        • Resume
        • serverName
        • shareName
        • status
      • Job
        • Delete
        • Pause
        • Restart
        • Resume
      • enhancedFormatting
        • allFooterHeight
        • allHeaderHeight
        • allPagesFooter
        • allPagesHeader
        • extraFirstFooterHeight
        • extraFirstPageFooter
        • firstFooterHeight
        • firstHeaderHeight
        • firstPageFooter
        • firstPageHeader
        • pageRange
        • printingPass
      • rawPrinting
        • printer
        • printDocument
        • printString
    • Change and history logs
    • Articles
      • v1.15.x ScriptX Client Library
      • Dialogs with ScriptX.Services
      • Accessing protected content
      • Long term servicing (LTS)
 
ScriptX logotype
Home Getting started Documentation Samples Contact us

© 2025 Mead & Co Limited.

Follow us:
LinkedIn   GitHub
X

Warning:

This ScriptX.Add-on sample can only be viewed using Internet Explorer.