No project description provided
Project description
pysimio
Description
pySimio is the official Python Library wrapper for the Simio Portal REST API.
Installation
pip install pysimio
Usage
import pysimio
# Example usage
```python
from pysimio import pySimio
simio_portal_url = "https://simio.portal"
personal_access_token = os.getenv("PERSONAL_ACCESS_TOKEN")
api = pySimio(simio_portal_url)
api.authenticate(personalAccessToken=personal_access_token)
Available Methods
Additional documentation and usage examples are coming soon.
- status: Return the current heartbeat status from the Simio Portal Instance
- reauthenticate: Attempts to reauthenticate to the API using the PAT provided during authentication
- authenticate: Authenticate to the API using a PAT or SAML Assertion
- getModels: Returns a json list of all current Simio Portal models
- getModel: Returns an instance of the SimioModel class
- getModelTable: Returns a json representation of a table on a Simio Portal model
- getExperiments: Returns a json list of all current Simio Portal expermients on a model
- getExperiment: Returns an instance of the SimioExperiment class
- publishPlan: Publish a specific Simio Plan within Simio Portal
- uploadAndPublishPlan: Upload a Simio Model, and publish the plan within Simio Portal
- getRuns: Returns a json list of all current Simio Portal runs
- getRun: Returns a json representation of a specific Simio Portal run
- deleteRun: Delete a specific Simio Run within Simio Portal
- cancelRun: Cancels a specific Simio Run within Simio Portal
- setRunTimeOptions: Sets the Time Options on a specific Simio Portal Run
- cancelPlan: Cancels a specific Simio Plan within Simio Portal
- createRun: Creates a new Simio Run within Simio Portal
- startRun: Creates and starts a new Simio Experiment run within Simio Portal. To update control parameters, you would add them to the "scenarios" section in the JSON and run it again.
- createRunFromExisting: Create a new instances of a Simio Run within Simio Portal from an existing Simio Run
- startRunFromExisting: Start a new run of a Simio Run from an existing Simio Run
- getExport: Returns a json representation of a Simio Export from Simio Portal
- getImport: Returns a json representation of a Simio Import from Simio Portal
- getTableData: Returns a json representation of a Simio Table
- deleteModel: Deletes a Simio Model from Simio Portal
- deleteProject: Deletes a Simio Project from Simio Portal
- uploadProject: Upload a new Simio Project file to Simio Portal
- getProjects: Returns a json list of existing Simio Projects from Simio Portal
- getProject: Returns a json representation of a Simio Project from Simio Portal
- setControlValues: Update Control Values
- setScenarioName: Update Scenario Name in a Simio Run within Simio Portal
- getScenarios: Returns a json representation of a Simio Portal Scenario from a specified run
Classes
@dataclass
class SimioDataClass:
def as_json(self, include_null: bool = False) -> dict:
return asdict(
self,
dict_factory=lambda fields: {
key: value
for (key, value) in fields
if value is not None or include_null
},
)
@classmethod
def from_json(cls, data: dict):
return cls(**data) # Create an instance of the dataclass
@dataclass
class SimioExperiment(SimioDataClass):
id: int
name: Optional[str] = None
modelId: Optional[int] = None
modelName: Optional[str] = None
projectName: Optional[str] = None
hasExperimentRuns: Optional[bool] = None
hasPlanRuns: Optional[bool] = None
@dataclass
class SimioModel(SimioDataClass):
id: int
name: Optional[str] = None
projectId: Optional[int] = None
projectName: Optional[str] = None
projectOwner: Optional[str] = None
projectUploadDateTime: Optional[str] = None
projectSavedDate: Optional[str] = None
projectSavedInVersion: Optional[str] = None
License
This project is licensed under the Apache License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pysimio-1.5.0.tar.gz
(11.2 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
pysimio-1.5.0-py3-none-any.whl
(12.3 kB
view details)
File details
Details for the file pysimio-1.5.0.tar.gz.
File metadata
- Download URL: pysimio-1.5.0.tar.gz
- Upload date:
- Size: 11.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.2.1 CPython/3.13.7 Linux/6.11.0-1018-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b20c3317bdda23948a796b43277f97087c8e089b0886982c57337e5a7c69bf3f
|
|
| MD5 |
6904fb18c0b56470cea287a2377df20f
|
|
| BLAKE2b-256 |
9c1187294f1c1df1e8466971bd83b136e33c0a198f5c838dc9d7b90121061f5d
|
File details
Details for the file pysimio-1.5.0-py3-none-any.whl.
File metadata
- Download URL: pysimio-1.5.0-py3-none-any.whl
- Upload date:
- Size: 12.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.2.1 CPython/3.13.7 Linux/6.11.0-1018-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4d9d93683cdd77c96b0aa8b25c1ef0d84e679a8850544b7ce7c84cbb69fb4ae1
|
|
| MD5 |
6c66e627215ad5eeb6d754928b9268d9
|
|
| BLAKE2b-256 |
4d2ebf5810b9a2b8f1e07c7b875cb408906498f9e67299f2e35c463edaf20788
|