Skip to main content

A professional library for PI Web API integration

Project description

piwebapiconnect

A professional Python library for PI Web API integration.

Installation

pip install piwebapiconnect

Usage

Using .env file

Create a .env file in your project root with the following variables:

PI_WEB_API_URL=https://your-pi-server/piwebapi
PI_WEB_API_USERNAME=domain\user
PI_WEB_API_PASSWORD=your-password
PI_SERVER_NAME=PISERVER01
PI_WEB_API_VERIFY_SSL=True  # Optional, defaults to True
from piwebapiconnect import get_service
service = get_service()

Functions Provided

All service functions are asynchronous.

  • get_current_value(tag_name: str): Fetch the current value for a given PI tag.
  • get_recorded_values(tag_name: str, start_time: str, end_time: str): Fetch historical (recorded) values for a time range.
  • write_value(tag_name: str, value: Any, timestamp: Any = None): Write a value for a PI tag.
  • search_tags(query: str): Search for PI tags based on a query pattern.
  • get_asset_servers(): List available PI AF System (Asset Server) names.
  • get_organizations(asset_server: str): List AF Databases (Organizations) on a specific Asset Server.
  • test_connection(): Verify the connection status to the PI Web API.
  • close(): Close the underlying HTTP client.

Passing credentials directly

from piwebapiconnect import get_service
import asyncio
service = get_service(
    url="https://your-pi-server/piwebapi",
    username="domain\\user",
    password="your-password",
    server_name="PISERVER01",
    verify_ssl=False  # Optional
)

async def main():
    val = await service.get_current_value("YourTagName")
    print(val)

if __name__ == "__main__":
    asyncio.run(main())

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

piwebapiconnect-0.1.5.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

piwebapiconnect-0.1.5-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file piwebapiconnect-0.1.5.tar.gz.

File metadata

  • Download URL: piwebapiconnect-0.1.5.tar.gz
  • Upload date:
  • Size: 6.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.6

File hashes

Hashes for piwebapiconnect-0.1.5.tar.gz
Algorithm Hash digest
SHA256 2bb192304274377b134e849c5956b402d0d000b5236bce9c848967e8febcfaeb
MD5 d5c8f5814f486af65cd4c4a17fc956ac
BLAKE2b-256 2603fa5b142793b7a6ec735893693083f432ebe571cf793e9b24134c3796c353

See more details on using hashes here.

File details

Details for the file piwebapiconnect-0.1.5-py3-none-any.whl.

File metadata

File hashes

Hashes for piwebapiconnect-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 b65cca41e4818b3a0cb81fba275566df09c08d90a5e03f594893fc5525e5ed84
MD5 21d8463608b2aba8fe1fd8f3a4ce1dbf
BLAKE2b-256 60539ef1affd31bb126db6a56ef2d25b8164e251acea93d5d4844dd8db3c96b4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page