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.6.0.tar.gz
(11.6 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.6.0-py3-none-any.whl
(12.7 kB
view details)
File details
Details for the file pysimio-1.6.0.tar.gz.
File metadata
- Download URL: pysimio-1.6.0.tar.gz
- Upload date:
- Size: 11.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.2.1 CPython/3.14.0 Linux/6.11.0-1018-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eb5d0dc66488529f6a3715ede5b845bfd0244066d4f7cb3cf1b7649d173564c3
|
|
| MD5 |
f2a0817786aa59363a76b350249e16d2
|
|
| BLAKE2b-256 |
da50bdf0dc65592966ac11a0c5227935723f4c22a2b64f248f62fd6707c44cbe
|
File details
Details for the file pysimio-1.6.0-py3-none-any.whl.
File metadata
- Download URL: pysimio-1.6.0-py3-none-any.whl
- Upload date:
- Size: 12.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.2.1 CPython/3.14.0 Linux/6.11.0-1018-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d92b83ced2441dac565a4081447473c4b07f24872fd324590e6c2cc1e19acf4d
|
|
| MD5 |
57f88e0e12c36e39f877e36a55b951df
|
|
| BLAKE2b-256 |
4d91d4e0c025d16e2a914709a99b750e1475e5e8073c0c8237d2353560ac6ce3
|