Skip to content

PI Web API 2018 SP1 Swagger Spec API

by osisoft.com

No authHTTPSBusiness
Open documentation ↗

Overview

Swagger Spec file that describes PI Web API

PI Web API 2018 SP1 Swagger Spec is a business API from osisoft.com. It needs no API key. It is served over HTTPS. Its OpenAPI description documents 413 endpoints.

At a glance

Authentication
No auth
HTTPS
Yes
CORS
Unknown
Category
Business
Base URL
https://devdata.osisoft.com/piwebapi
Version
1.11.1.5383
Endpoints
413
Spec updated
2020-07-22

Make a first request

Replace the placeholders; the documentation says exactly where credentials go.

cURL
curl -X GET "https://devdata.osisoft.com/piwebapi/" \
  -H "Accept: application/json"
JavaScript
const response = await fetch("https://devdata.osisoft.com/piwebapi/", {
  method: "GET",
  headers: {
    "Accept": "application/json",
  },
});
const data = await response.json();
console.log(data);
Python
import requests

response = requests.request(
    "GET",
    "https://devdata.osisoft.com/piwebapi/",
    headers={
    "Accept": "application/json",
    },
    timeout=30,
)
print(response.json())

Endpoints

MethodPathWhat it does
GET/Get top level links for this PI System Web API instance.
GET/analysesRetrieve an Analysis by path.
GET/analyses/searchRetrieve analyses based on the specified conditions. By default, returns all analyses.
GET/analyses/{webId}Retrieve an Analysis.
PATCH/analyses/{webId}Update an Analysis.
DELETE/analyses/{webId}Delete an Analysis.
GET/analyses/{webId}/categoriesGet an Analysis' categories.
GET/analyses/{webId}/securityGet the security information of the specified security item associated with the Analysis for a specified user.
GET/analyses/{webId}/securityentriesRetrieve the security entries associated with the analysis based on the specified criteria. By default, all security entries for this analysis are returned.
POST/analyses/{webId}/securityentriesCreate a security entry owned by the analysis.
GET/analyses/{webId}/securityentries/{name}Retrieve the security entry associated with the analysis with the specified name.
PUT/analyses/{webId}/securityentries/{name}Update a security entry owned by the analysis.
DELETE/analyses/{webId}/securityentries/{name}Delete a security entry owned by the analysis.
GET/analysiscategoriesRetrieve an analysis category by path.
GET/analysiscategories/{webId}Retrieve an analysis category.
PATCH/analysiscategories/{webId}Update an analysis category by replacing items in its definition.
DELETE/analysiscategories/{webId}Delete an analysis category.
GET/analysiscategories/{webId}/securityGet the security information of the specified security item associated with the analysis category for a specified user.
GET/analysiscategories/{webId}/securityentriesRetrieve the security entries associated with the analysis category based on the specified criteria. By default, all security entries for this analysis category
POST/analysiscategories/{webId}/securityentriesCreate a security entry owned by the analysis category.
GET/analysiscategories/{webId}/securityentries/{name}Retrieve the security entry associated with the analysis category with the specified name.
PUT/analysiscategories/{webId}/securityentries/{name}Update a security entry owned by the analysis category.
DELETE/analysiscategories/{webId}/securityentries/{name}Delete a security entry owned by the analysis category.
GET/analysisrulepluginsRetrieve an Analysis Rule Plug-in by path.
GET/analysisruleplugins/{webId}Retrieve an Analysis Rule Plug-in.
GET/analysisrulesRetrieve an Analysis Rule by path.
GET/analysisrules/{webId}Retrieve an Analysis Rule.
PATCH/analysisrules/{webId}Update an Analysis Rule by replacing items in its definition.
DELETE/analysisrules/{webId}Delete an Analysis Rule.
GET/analysisrules/{webId}/analysisrulesGet the child Analysis Rules of the Analysis Rule.
POST/analysisrules/{webId}/analysisrulesCreate a new Analysis Rule as a child of an existing Analysis Rule.
GET/analysistemplatesRetrieve an analysis template by path.
POST/analysistemplatesCreate an Analysis template based upon a specified Analysis.
GET/analysistemplates/searchRetrieve analysis templates based on the specified conditions. By default, returns all analysis templates.
GET/analysistemplates/{webId}Retrieve an analysis template.
PATCH/analysistemplates/{webId}Update an analysis template by replacing items in its definition.
DELETE/analysistemplates/{webId}Delete an analysis template.
GET/analysistemplates/{webId}/categoriesGet an analysis template's categories.
GET/analysistemplates/{webId}/securityGet the security information of the specified security item associated with the analysis template for a specified user.
GET/analysistemplates/{webId}/securityentriesRetrieve the security entries associated with the analysis template based on the specified criteria. By default, all security entries for this analysis template
POST/analysistemplates/{webId}/securityentriesCreate a security entry owned by the analysis template.
GET/analysistemplates/{webId}/securityentries/{name}Retrieve the security entry associated with the analysis template with the specified name.
PUT/analysistemplates/{webId}/securityentries/{name}Update a security entry owned by the analysis template.
DELETE/analysistemplates/{webId}/securityentries/{name}Delete a security entry owned by the analysis template.
GET/assetdatabasesRetrieve an Asset Database by path.
GET/assetdatabases/{webId}Retrieve an Asset Database.
PATCH/assetdatabases/{webId}Update an asset database by replacing items in its definition.
DELETE/assetdatabases/{webId}Delete an asset database.
GET/assetdatabases/{webId}/analysesRetrieve analyses based on the specified conditions.
GET/assetdatabases/{webId}/analysiscategoriesRetrieve analysis categories for a given Asset Database.
POST/assetdatabases/{webId}/analysiscategoriesCreate an analysis category at the Asset Database root.
GET/assetdatabases/{webId}/analysistemplatesRetrieve analysis templates based on the specified criteria. By default, all analysis templates in the specified Asset Database are returned.
POST/assetdatabases/{webId}/analysistemplatesCreate an analysis template at the Asset Database root.
GET/assetdatabases/{webId}/attributecategoriesRetrieve attribute categories for a given Asset Database.
POST/assetdatabases/{webId}/attributecategoriesCreate an attribute category at the Asset Database root.
GET/assetdatabases/{webId}/elementattributesRetrieves a list of element attributes matching the specified filters from the specified asset database.
GET/assetdatabases/{webId}/elementcategoriesRetrieve element categories for a given Asset Database.
POST/assetdatabases/{webId}/elementcategoriesCreate an element category at the Asset Database root.
GET/assetdatabases/{webId}/elementsRetrieve elements based on the specified conditions. By default, this method selects immediate children of the specified asset database.
POST/assetdatabases/{webId}/elementsCreate a child element.
GET/assetdatabases/{webId}/elementtemplatesRetrieve element templates based on the specified criteria. Only templates of instance type "Element" and "EventFrame" are returned. By default, all element and
POST/assetdatabases/{webId}/elementtemplatesCreate a template at the Asset Database root. Specify InstanceType of "Element" or "EventFrame" to create element or event frame template respectively. Only the
GET/assetdatabases/{webId}/enumerationsetsRetrieve enumeration sets for given asset database.
POST/assetdatabases/{webId}/enumerationsetsCreate an enumeration set at the Asset Database.
GET/assetdatabases/{webId}/eventframeattributesRetrieves a list of event frame attributes matching the specified filters from the specified asset database.
GET/assetdatabases/{webId}/eventframesRetrieve event frames based on the specified conditions. By default, returns all children of the specified root resource that have been active in the past 8 hou
POST/assetdatabases/{webId}/eventframesCreate an event frame.
GET/assetdatabases/{webId}/exportExport the asset database.
POST/assetdatabases/{webId}/importImport an asset database.
GET/assetdatabases/{webId}/referencedelementsRetrieve referenced elements based on the specified conditions. By default, this method selects all referenced elements at the root level of the asset database.
POST/assetdatabases/{webId}/referencedelementsAdd a reference to an existing element to the specified database.
DELETE/assetdatabases/{webId}/referencedelementsRemove a reference to an existing element from the specified database.
GET/assetdatabases/{webId}/securityGet the security information of the specified security item associated with the asset database for a specified user.
GET/assetdatabases/{webId}/securityentriesRetrieve the security entries of the specified security item associated with the asset database based on the specified criteria. By default, all security entrie
POST/assetdatabases/{webId}/securityentriesCreate a security entry owned by the asset database.
GET/assetdatabases/{webId}/securityentries/{name}Retrieve the security entry of the specified security item associated with the asset database with the specified name.
PUT/assetdatabases/{webId}/securityentries/{name}Update a security entry owned by the asset database.
DELETE/assetdatabases/{webId}/securityentries/{name}Delete a security entry owned by the asset database.
GET/assetdatabases/{webId}/tablecategoriesRetrieve table categories for a given Asset Database.
POST/assetdatabases/{webId}/tablecategoriesCreate a table category on the Asset Database.
GET/assetdatabases/{webId}/tablesRetrieve tables for given Asset Database.
POST/assetdatabases/{webId}/tablesCreate a table on the Asset Database.
GET/assetserversRetrieve a list of all Asset Servers known to this service.
GET/assetservers#nameRetrieve an Asset Server by name.
GET/assetservers#pathRetrieve an Asset Server by path.
GET/assetservers/{webId}Retrieve an Asset Server.
GET/assetservers/{webId}/analysisrulepluginsRetrieve a list of all Analysis Rule Plug-in's.
GET/assetservers/{webId}/assetdatabasesRetrieve a list of all Asset Databases on the specified Asset Server.
POST/assetservers/{webId}/assetdatabasesCreate an asset database.
GET/assetservers/{webId}/notificationcontacttemplatesRetrieve a list of all notification contact templates on the specified Asset Server.
POST/assetservers/{webId}/notificationcontacttemplatesCreate a notification contact template.
GET/assetservers/{webId}/notificationpluginsRetrieve a list of all notification plugins on the specified Asset Server.
GET/assetservers/{webId}/securityGet the security information of the specified security item associated with the asset server for a specified user.
GET/assetservers/{webId}/securityentriesRetrieve the security entries of the specified security item associated with the asset server based on the specified criteria. By default, all security entries
POST/assetservers/{webId}/securityentriesCreate a security entry owned by the asset server.
GET/assetservers/{webId}/securityentries/{name}Retrieve the security entry of the specified security item associated with the asset server with the specified name.
PUT/assetservers/{webId}/securityentries/{name}Update a security entry owned by the asset server.
DELETE/assetservers/{webId}/securityentries/{name}Delete a security entry owned by the asset server.
GET/assetservers/{webId}/securityidentitiesRetrieve security identities based on the specified criteria. By default, all security identities in the specified Asset Server are returned.
POST/assetservers/{webId}/securityidentitiesCreate a security identity.

Showing the first 100 of 413 endpoints; the full list is in the documentation.

Questions

Does the PI Web API 2018 SP1 Swagger Spec API need an API key?

No. The PI Web API 2018 SP1 Swagger Spec API can be called without an API key or sign-up, which makes it handy for prototypes and front-end demos.

Does the PI Web API 2018 SP1 Swagger Spec API support HTTPS?

Yes, the PI Web API 2018 SP1 Swagger Spec API is served over HTTPS.

How many endpoints does the PI Web API 2018 SP1 Swagger Spec API have?

Its OpenAPI description lists 413 endpoints in version 1.11.1.5383. The first 100 are shown on this page.

What are alternatives to the PI Web API 2018 SP1 Swagger Spec API?

Other Business APIs include Gmail, Google Analytics, Apache Superset, Trello, Square.

Compare alternatives →

Listed from APIs.guru (CC0).