Client for Data Space Connector service
Project description
Python client
API version: 0.1.0
Requirements
- Python 3.10+
- Docker engine. Documentation
Installation & Usage
- If you don't have
Poetry
installed run:
pip install poetry
- Install dependencies:
poetry config virtualenvs.in-project true
poetry install --no-root
- Running tests:
poetry run pytest
You can test the application for multiple versions of Python. To do this, you need to install the required Python versions on your operating system, specify these versions in the tox.ini file, and then run the tests:
poetry run tox
Add the tox.ini file to client/.openapi-generator-ignore
so that it doesn't get overwritten during client generation.
- Building package:
poetry build
- Publishing
poetry config pypi-token.pypi <pypi token>
poetry publish
Client generator
To generate the client, execute the following script from the project root folder
poetry --directory server run python ./tools/client_generator/generate.py --file ./api/openapi.yaml
Command
generate.py [--file <a path or URL to a .yaml file>] [--asyncio]
Arguments
--file Specifies the input OpenAPI specification file path or URL. This argument is required for generating the Python client. The input file can be either a local file path or a URL pointing to the OpenAPI schema.
--asyncio Flag to indicate whether to generate asynchronous code. If this flag is provided, the generated Python client will include asynchronous features. By default, synchronous code is generated.
Saving Arguments
The script saves provided arguments for future use. Upon the initial execution, if no arguments are provided, the script will check if there are previously saved arguments in the specified file path. If saved arguments are found, they will be loaded and used for generating the client. If no saved arguments are found or if new arguments are provided, the script will save the provided arguments for future use.
This mechanism ensures that users can omit specifying arguments on subsequent executions if the same arguments were used previously. Saved arguments are stored in a JSON file located at generator/args.json.
Configuration
You can change the name of the client package in the file /tools/client_generator/config.json
.
Add file's paths to client/.openapi-generator-ignore
so that it doesn't get overwritten during client generation.
Examples
python generate.py --file https://<domain>/openapi.json
python generate.py --file https://<domain>/openapi.json --asyncio
python generate.py --file /<path>/openapi.yaml
python generate.py --file /<path>/openapi.yaml --asyncio
python generate.py
Getting Started
Please follow the installation procedure and then run the following:
import ds_connector
from ds_connector.rest import ApiException
from pprint import pprint
# Defining the host is optional and defaults to http://localhost
# See configuration.py for a list of all supported configuration parameters.
configuration = ds_connector.Configuration(
host = "http://localhost"
)
# Enter a context with an instance of the API client
with ds_connector.ApiClient(configuration) as api_client:
# Create an instance of the API class
api_instance = ds_connector.DefaultApi(api_client)
try:
# Example endpoint
api_response = api_instance.example_get()
print("The response of DefaultApi->example_get:\n")
pprint(api_response)
except ApiException as e:
print("Exception when calling DefaultApi->example_get: %s\n" % e)
Documentation for API Endpoints
All URIs are relative to http://localhost
Class | Method | HTTP request | Description |
---|---|---|---|
DefaultApi | example_get | GET / | Example endpoint |
DefaultApi | metrics_metrics_get | GET /metrics | Metrics |
ItemsApi | items_create | POST /item/ | Create an item |
ItemsApi | items_delete_item | DELETE /item/{id}/ | Delete an item |
ItemsApi | items_read_all | GET /item/ | Read all items |
ItemsApi | items_read_item | GET /item/{id}/ | Read an item |
ItemsApi | items_update_item | PUT /item/{id}/ | Update an item |
Documentation For Models
Documentation For Authorization
Endpoints do not require authorization.
Author
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
Built Distribution
File details
Details for the file ds_connector-0.1.0.tar.gz
.
File metadata
- Download URL: ds_connector-0.1.0.tar.gz
- Upload date:
- Size: 23.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.5 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3dd99ac21a6aa77d11ab5e6fab9365599fef556321518e7627146b6b13e90f23 |
|
MD5 | f0ac42a9d81593d776be85533cf2be7a |
|
BLAKE2b-256 | c3ac2fe0add2a14a33c2f3643c33af75c1612523adf9d5e0686d5d29f1ae9df6 |
File details
Details for the file ds_connector-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: ds_connector-0.1.0-py3-none-any.whl
- Upload date:
- Size: 32.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.5 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ce794e8bbc03b1faa67fd6d18f2c7c4099aa974266713d3adf93b9f5f7a9337b |
|
MD5 | 88b9846a41ddb36ea4f18e3e683353f7 |
|
BLAKE2b-256 | a4b35e91e672033802ff003ccce1b0b2a36eebbb96b6f751683a5a173124e8fc |