nexiles.tools.api -- python nexiles Windchill gateway http client api
Project description
- Date:
- 2015-03-25
- Version:
- 0.3
- License:
BSD
Abstract
This is the repository of the python HTTP API client to the nexiles.tools Windchill API of nexiles GmbH.
Features
Querying
read and write IBA Attributes
up- and download of content
create and delete Business Objects (WTPart, WTDocument, Products)
usage, used-by, references navigation of parts and epm documents
type information queries
team, role, user queries
no InfoEngine license needed!
Supported Business Objects
name |
business object |
actions available |
---|---|---|
organizations |
wt.inf.Organization |
|
products |
wt.pdm.PDMLinkProduct |
container attributes parts documents epmdocuments |
libraries |
wt.inf.library.WTLibrary |
container attributes parts documents epmdocuments |
projects |
wt.projmgmt.admin.Project2 |
container attributes parts documents epmdocuments workpackages |
cabinets |
wt.folder.Cabinet |
|
folders |
wt.folder.SubFolder |
|
epmdocuments |
wt.epm.EPMDocument |
container attributes history content uses references used_by |
parts |
wt.part.WTPart |
container attributes history content uses |
documents |
wt.doc.WTDocument |
container attributes history content |
teams |
wt.inf.team.ContainerTeam |
roles participants |
groups |
wt.org.WTGroup |
members |
users |
wt.org.WTUser |
|
types |
com.ptc.core.meta.type.mgmt.server.impl.WTTypeDefinition |
attribute_names |
reports |
wt.query.template.ReportTemplate |
execute |
workpackages |
com.ptc.windchill.wp.WorkPackage |
content container attributes |
Usage Example
For e.g. fetching all WTDocuments which match a certain number:
>>> from nexiles.tools.api import get_api >>> api = get_api("http://www.example.com/Windchill", username="fred", password="kaputnik") >>> docs = api.documents(number="1003*")
Fetching a certain document identified by it’s OID:
>>> doc = api.document("OR:wt.doc.WTDocument:2342344") >>> doc.name, doc.number, doc.version u'Test Document', u'12345345', u'A.3'
Fetching the PRIMARY CONTENT of a part:
>>> content = api.parts("OR:wt.epm.EPMDocument:4711").content.get(role="PRIMARY", filename="COVER.PRT")
For more examples, see the documentation.
Requirements
Server Side Requirements
To use the API, you need a recent version of the nexiles.tools installed on your Windchill server.
We currently support Windchill 9.1, 10.x.
Please contact info@nexiles.com for licensing and deployment information regarding the server-side package.
Client Side Requirements
To use the API on your clients, you need:
a recent python (testing is done with 2.7.x, we’re not python 3 compatible yet)
The dependencies listed in the setup.py file. Note that these should be installed automatically.
Documentation
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.