Metadata-Version: 2.4
Name: pyxecm
Version: 3.3.8
Summary: A Python library to interact with Opentext Content Management Rest API
Project-URL: Homepage, https://github.com/opentext/pyxecm
Author-email: Kai Gatzweiler <kgatzweiler@opentext.com>, "Dr. Marc Diefenbruch" <mdiefenb@opentext.com>
Keywords: appworks,archivecenter,contentserver,extendedecm,opentext,otds
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content :: Content Management System
Requires-Python: >=3.10
Requires-Dist: lxml>=6.0.0
Requires-Dist: opentelemetry-api>=1.34.1
Requires-Dist: opentelemetry-exporter-otlp>=1.34.1
Requires-Dist: opentelemetry-instrumentation-requests>=0.55b1
Requires-Dist: opentelemetry-instrumentation-threading>=0.55b1
Requires-Dist: opentelemetry-sdk>=1.34.1
Requires-Dist: pandas>=2.3.1
Requires-Dist: requests-toolbelt>=1.0.0
Requires-Dist: requests>=2.32.4
Requires-Dist: suds>=1.2.0
Requires-Dist: websockets>=15.0.1
Requires-Dist: xmltodict>=0.14.2
Requires-Dist: zeep>=4.2.0
Provides-Extra: api
Requires-Dist: asyncio>=3.4.3; extra == 'api'
Requires-Dist: fastapi>=0.116.0; extra == 'api'
Requires-Dist: jinja2>=3.1.6; extra == 'api'
Requires-Dist: opentelemetry-api>=1.34.1; extra == 'api'
Requires-Dist: opentelemetry-instrumentation-fastapi>=0.55b1; extra == 'api'
Requires-Dist: opentelemetry-sdk>=1.34.1; extra == 'api'
Requires-Dist: prometheus-fastapi-instrumentator>=7.1.0; extra == 'api'
Requires-Dist: pydantic-settings>=2.10.1; extra == 'api'
Requires-Dist: python-multipart>=0.0.20; extra == 'api'
Requires-Dist: uvicorn>=0.35.0; extra == 'api'
Provides-Extra: customizer
Requires-Dist: kubernetes>=33.1.0; extra == 'customizer'
Requires-Dist: openpyxl>=3.1.5; extra == 'customizer'
Requires-Dist: playwright>=1.53.0; extra == 'customizer'
Requires-Dist: pydantic>=2.11.7; extra == 'customizer'
Requires-Dist: python-hcl2==7.3.1; extra == 'customizer'
Provides-Extra: magic
Requires-Dist: python-magic; extra == 'magic'
Provides-Extra: sap
Requires-Dist: pyrfc==3.3.1; extra == 'sap'
Description-Content-Type: text/markdown

# PYXECM

A python library to interact with Opentext Content Mangement REST API.
The product API documentation is available on [OpenText Developer](https://developer.opentext.com/ce/products/extendedecm)
Detailed documentation of this package is available [here](https://opentext.github.io/pyxecm/).

## Quick start - Library usage

Install the latest version from pypi:

```bash
pip install pyxecm
```

### Start using the package libraries

example usage of the OTCS class, more details can be found in the docs:

```python
from pyxecm import OTCS

otcs_object = OTCS(
    protocol="https",
    hostname="otcs.domain.tld",
    port="443",
    public_url="otcs.domain.tld",
    username="admin",
    password="********",
    base_path="/cs/llisapi.dll",
)

otcs_object.authenticate()

nodes = otcs_object.get_subnodes(2000)

for node in nodes["results"]:
    print(node["data"]["properties"]["id"], node["data"]["properties"]["name"])
```

## Quick start - Customizer usage

- Create an `.env` file as described here: [sample-environment-variables](customizerapisettings/#sample-environment-variables)
- Create an payload file to define what the customizer should do, as described here [payload-syntax](payload-syntax)

```bash
pip install pyxecm[customizer]

pyxecm-customizer PAYLOAD.tfvars/PAYLOAD.yaml
```

## Quick start - API 

- Install pyxecm with api and customizer dependencies
- Launch the Rest API server
- Access the Customizer API at [http://localhost:8000/api](http://localhost:8000/api)

```bash
pip install pyxecm[api,customizer]

pyxecm-api
```

## Disclaimer


Copyright © 2025 Open Text Corporation, All Rights Reserved.
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
