Skip to main content

Mat3ra.com Python Client for RESTful API

Project description

PyPI version

This package provides access to Mat3ra.com RESTful API.

Installation

We recommend creating a virtual environment before installing:

virtualenv my-virtualenv
source my-virtualenv/bin/activate

Install using pip:

  • from PyPI:
pip install mat3ra-api-client
  • from source code in development mode:
git clone git@github.com:Exabyte-io/api-client.git
cd api-client
pip install -e .

Usage

from mat3ra.api_client import APIClient

# Authenticate with OIDC token
client = APIClient.authenticate()

# Access endpoints
materials = client.materials.list()

Examples

api-examples repository contains examples for performing most-common tasks in the Mat3ra.com platform through its RESTful API in Jupyter Notebook format.

Testing

The package uses pytest for testing. Tests are organized into unit and integration tests.

Running Tests

Unit Tests (No environment setup required)

Run all unit tests:

pytest tests/py/unit

Integration Tests (Requires API credentials)

Integration tests require the following environment variables to be set:

  • TEST_HOST - API host (e.g., platform.mat3ra.com)
  • TEST_PORT - API port (e.g., 443)
  • TEST_ACCOUNT_ID - Your account ID
  • TEST_AUTH_TOKEN - Your authentication token
  • TEST_SECURE - Use HTTPS (optional, default: False)
  • TEST_VERSION - API version (optional, default: 2018-10-01)

To run integration tests:

export TEST_HOST=platform.mat3ra.com
export TEST_PORT=443
export TEST_ACCOUNT_ID=your-account-id
export TEST_AUTH_TOKEN=your-auth-token
export TEST_SECURE=true

pytest tests/py/integration

Run All Tests

pytest tests/py

Run Tests with Coverage

pytest tests/py/unit --cov=mat3ra.api_client --cov-report=term --cov-report=html

Note: Integration tests will be automatically skipped if required environment variables are not set.

© 2020 Exabyte Inc.

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

mat3ra_api_client-2025.12.25.post1.tar.gz (22.2 kB view details)

Uploaded Source

Built Distribution

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

mat3ra_api_client-2025.12.25.post1-py3-none-any.whl (22.9 kB view details)

Uploaded Python 3

File details

Details for the file mat3ra_api_client-2025.12.25.post1.tar.gz.

File metadata

  • Download URL: mat3ra_api_client-2025.12.25.post1.tar.gz
  • Upload date:
  • Size: 22.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/8.7.1 pkginfo/1.12.1.2 requests/2.32.5 requests-toolbelt/1.0.0 tqdm/4.67.1 CPython/3.10.13

File hashes

Hashes for mat3ra_api_client-2025.12.25.post1.tar.gz
Algorithm Hash digest
SHA256 84a3a7af5a13c0fe5a57ea9ebd5f45711bcf8f2974c4abe8f8bcd26473385b49
MD5 9454628ea6a82cbcbc3bcd5b4ea9a874
BLAKE2b-256 173a54359dbd605c37056aab3ef8fa1a2b42ccfaa4ad64d92ab00e6f2df695f2

See more details on using hashes here.

File details

Details for the file mat3ra_api_client-2025.12.25.post1-py3-none-any.whl.

File metadata

  • Download URL: mat3ra_api_client-2025.12.25.post1-py3-none-any.whl
  • Upload date:
  • Size: 22.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/8.7.1 pkginfo/1.12.1.2 requests/2.32.5 requests-toolbelt/1.0.0 tqdm/4.67.1 CPython/3.10.13

File hashes

Hashes for mat3ra_api_client-2025.12.25.post1-py3-none-any.whl
Algorithm Hash digest
SHA256 7e49d1889a1a2a6f75cd8bcc87d1b9ec236d34e65c7143f9760b6ea733d3342f
MD5 83d6edb134dc20e4895cfb0837cff715
BLAKE2b-256 f081ee938d4f6a6fd4424500df3cf8ab9a66567a37ec82be6bd0abfe56d141fc

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