The Orion Platform SDK is a set of tools, published on GitHub, that you can use to interface with the Orion Platform API. The API is not specific to any one Orion Platform module; it's the infrastructure that all of those products run on.
Each time you use an Orion Platform product, you interact with the API -- it's open and waiting for requests that come from within the products (for example, when you add a node for SAM monitoring). The API is already running on your Main Polling Engine, as well as any Additional Polling Engines (APEs) or Additional Web Servers.
SolarWinds provides the Orion Platform SDK as a tool to enhance the flexibility and ease of manipulating certain aspects of the Orion Platform. The SDK offers direct access to portions of the SolarWinds Information Service (SWIS) using SQL-like queries in SolarWinds Query Language (SWQL). It allows for higher-level operations than would be allowed when making changes in SQL, returning results similar to what SWQL or SWIS tools return.
New to the Orion SDK and API? Read Intro to API, SDK, & SWQL on THWACK, or watch Orion SDK 101: Intro to PowerShell and the Orion API.
Just as SAM can be used in many ways by different members of an organization, you can use the Orion Platform SDK for a variety of tasks, depending on what's available in your environment and how you use the Orion Platform to interact with other systems. In this topic, we'll discuss how to use the API Poller feature to interact with the Orion Platform SDK
Some ways to use the Orion Platform SDK include:
- Provide Orion Platform data to external teams.
- Assign SAM application monitor templates to nodes.
- Create groups and dependencies in the Orion Platform.
- Deploy Orion Platform agents to target nodes.
Note the following recommendations for using the SDK:
- Experiment with the Orion Platform SDK in a non-production instance of Orion Platform.
- Back up your Orion Platform database frequently.
The Orion Platform SDK is a powerful tool that can impact Orion Platform data. Users should be well-versed in SQL queries with a background in programming. SolarWinds does not provide pre- or post-Sales support on any Orion Platform SDK customizations, including code. Do not run untested PowerShell scripts against a production instance.
See the Orion Platform SDK wiki to learn more about the API. Here are some highlights:
- API requests should include the following details:
- Authentication: Use your Orion Platform account credentials.
- Authorization: Read-only requests don't require extra permissions, but you'll need Node Management rights to create, update, or delete data.
- The API lives on port 17778, uses HTTPS, and requires that you add /SolarWinds/InformationService/v3/Json/ portion after the host:port section.
To learn about additional SolarWinds APIs, see Useful SAM APIs.
Orion Platform SDK terminology
If you're new to the Orion Platform SDK, the following definitions for basic terms may be helpful:
- Software Development Kit (SDK). An SDK is a set of tools and libraries, provided by vendors, that allow others to more easily consume their API. You can download the Orion Platform SDK from GitHub at https://github.com/solarwinds/OrionSDK. It includes documentation, code samples, and tools like SWQL Studio, a GUI you can use to build custom SWQL queries and browse through available data.
You don't need to deploy the Orion Platform SDK to use SAM's API Poller feature, but the included SWQL Studio app may be helpful.
The GitHub site is the main resource for the Orion Platform SDK, where issues are tracked. If you have questions, post them in the Orion Platform SDK forum on THWACK instead of contacting SolarWinds Support. That forum is frequented by SolarWinds staff and THWACK MVPs, as well as other customers that can provide feedback.
- SolarWinds Query Language (SWQL): SWQL (rhymes with "pickle") is a proprietary, read-only subset of SQL that you can use to query your Orion Platform database for specific network information. For syntax and query examples, see Use SWQL in the Orion Platform.
- Orion Platform API: In software development terms, an Application Programming Interface (API) is an access point that allows one piece of software to access another. In a multi-tier system that is engineered to have its web, polling, reporting, and coordination communicate via separate layers, an API allows different parts of a system to be developed independently. The Orion Platform is that type of system (also called N-tier architecture), and you can use SWQL to read data through the API, as well as add, delete, or update data.
- SolarWinds Information Service (SWIS). The implementation of the API within the Orion Platform is embodied as a Windows service called SWIS. This service supports communication between the Orion server, the Orion Platform database, Orion Platform modules like SAM and NPM, and Additional Polling Engines (APEs). You can also use SWIS to access the Orion Platform when working with various scripting and programming technologies
- CRUD: SWIS supports the ability to Create, Update, and Delete SolarWinds (CRUD) objects so you can add nodes, add interfaces to nodes, and manage many other processes programmatically. can add nodes, add interfaces to nodes,
To learn more about the Orion Platform SDK, see:
- Intro to API, SDK, & SWQL (THWACK product blog)
- Orion Platform SDK 101: Intro to PowerShell and the Orion Platform API (video; 45:36)
- Orion Platform SDK Advanced Training - SolarWinds Academy Training Class
- There's an API for That: Introduction to the SolarWinds Orion Platform SDK (video; 30:00)
- Port 1777: Introduction to the SolarWinds API (video; 28.26)