polyapi-python 0.3.3.dev7__tar.gz → 0.3.3.dev9__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/LICENSE +1 -1
- {polyapi_python-0.3.3.dev7/polyapi_python.egg-info → polyapi_python-0.3.3.dev9}/PKG-INFO +2 -2
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/config.py +5 -1
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/execute.py +6 -1
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/parser.py +1 -1
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/utils.py +3 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9/polyapi_python.egg-info}/PKG-INFO +2 -2
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/pyproject.toml +3 -2
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/README.md +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/__init__.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/__main__.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/api.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/auth.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/cli.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/client.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/constants.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/deployables.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/error_handler.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/exceptions.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/function_cli.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/generate.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/poly_schemas.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/prepare.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/py.typed +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/rendered_spec.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/schema.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/server.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/sync.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/typedefs.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/variables.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi/webhook.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi_python.egg-info/SOURCES.txt +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi_python.egg-info/dependency_links.txt +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi_python.egg-info/requires.txt +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi_python.egg-info/top_level.txt +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/setup.cfg +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/tests/test_api.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/tests/test_auth.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/tests/test_deployables.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/tests/test_generate.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/tests/test_parser.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/tests/test_rendered_spec.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/tests/test_schema.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/tests/test_server.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/tests/test_utils.py +0 -0
- {polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/tests/test_variables.py +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: polyapi-python
|
|
3
|
-
Version: 0.3.3.
|
|
3
|
+
Version: 0.3.3.dev9
|
|
4
4
|
Summary: The Python Client for PolyAPI, the IPaaS by Developers for Developers
|
|
5
5
|
Author-email: Dan Fellin <dan@polyapi.io>
|
|
6
6
|
License: MIT License
|
|
7
7
|
|
|
8
|
-
Copyright (c)
|
|
8
|
+
Copyright (c) 2025 PolyAPI Inc.
|
|
9
9
|
|
|
10
10
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
11
11
|
of this software and associated documentation files (the "Software"), to deal
|
|
@@ -55,6 +55,10 @@ def set_api_key_and_url(key: str, url: str):
|
|
|
55
55
|
config.set("polyapi", "poly_api_base_url", url)
|
|
56
56
|
with open(get_config_file_path(), "w") as f:
|
|
57
57
|
config.write(f)
|
|
58
|
+
global API_KEY
|
|
59
|
+
global API_URL
|
|
60
|
+
API_KEY = key
|
|
61
|
+
API_URL = url
|
|
58
62
|
|
|
59
63
|
|
|
60
64
|
def initialize_config(force=False):
|
|
@@ -81,7 +85,7 @@ def initialize_config(force=False):
|
|
|
81
85
|
sys.exit(1)
|
|
82
86
|
|
|
83
87
|
set_api_key_and_url(key, url)
|
|
84
|
-
print_green(
|
|
88
|
+
print_green("Poly setup complete.")
|
|
85
89
|
|
|
86
90
|
if not key or not url:
|
|
87
91
|
print_yellow("Poly API Key and Poly API Base URL are required.")
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
from typing import Dict
|
|
1
2
|
import requests
|
|
2
3
|
from requests import Response
|
|
3
4
|
from polyapi.config import get_api_key_and_url
|
|
@@ -7,10 +8,14 @@ from polyapi.exceptions import PolyApiException
|
|
|
7
8
|
def execute(function_type, function_id, data) -> Response:
|
|
8
9
|
""" execute a specific function id/type
|
|
9
10
|
"""
|
|
11
|
+
data_without_None = data
|
|
12
|
+
if isinstance(data, Dict):
|
|
13
|
+
data_without_None = {k: v for k, v in data.items() if v is not None}
|
|
14
|
+
|
|
10
15
|
api_key, api_url = get_api_key_and_url()
|
|
11
16
|
headers = {"Authorization": f"Bearer {api_key}"}
|
|
12
17
|
url = f"{api_url}/functions/{function_type}/{function_id}/execute"
|
|
13
|
-
resp = requests.post(url, json=
|
|
18
|
+
resp = requests.post(url, json=data_without_None, headers=headers)
|
|
14
19
|
# print(resp.status_code)
|
|
15
20
|
# print(resp.headers["content-type"])
|
|
16
21
|
if resp.status_code < 200 or resp.status_code >= 300:
|
|
@@ -246,7 +246,7 @@ def _get_type_schema(json_type: str, python_type: str, schemas: List[Dict]):
|
|
|
246
246
|
return schema
|
|
247
247
|
|
|
248
248
|
|
|
249
|
-
def _get_type(expr: ast.expr | None, schemas: List[Dict]) -> Tuple[
|
|
249
|
+
def _get_type(expr: ast.expr | None, schemas: List[Dict]) -> Tuple[Any, Any, Any]:
|
|
250
250
|
if not expr:
|
|
251
251
|
return "any", "Any", None
|
|
252
252
|
python_type = get_python_type_from_ast(expr)
|
|
@@ -206,6 +206,9 @@ def parse_arguments(
|
|
|
206
206
|
arg_string += (
|
|
207
207
|
f" {a['name']}: {add_type_import_path(function_name, arg_type)}"
|
|
208
208
|
)
|
|
209
|
+
if not a["required"]:
|
|
210
|
+
arg_string += " = None"
|
|
211
|
+
|
|
209
212
|
description = a.get("description", "")
|
|
210
213
|
description = description.replace("\n", " ")
|
|
211
214
|
if description:
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: polyapi-python
|
|
3
|
-
Version: 0.3.3.
|
|
3
|
+
Version: 0.3.3.dev9
|
|
4
4
|
Summary: The Python Client for PolyAPI, the IPaaS by Developers for Developers
|
|
5
5
|
Author-email: Dan Fellin <dan@polyapi.io>
|
|
6
6
|
License: MIT License
|
|
7
7
|
|
|
8
|
-
Copyright (c)
|
|
8
|
+
Copyright (c) 2025 PolyAPI Inc.
|
|
9
9
|
|
|
10
10
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
11
11
|
of this software and associated documentation files (the "Software"), to deal
|
|
@@ -3,7 +3,7 @@ requires = ["setuptools>=61.2", "wheel"]
|
|
|
3
3
|
|
|
4
4
|
[project]
|
|
5
5
|
name = "polyapi-python"
|
|
6
|
-
version = "0.3.3.
|
|
6
|
+
version = "0.3.3.dev9"
|
|
7
7
|
description = "The Python Client for PolyAPI, the IPaaS by Developers for Developers"
|
|
8
8
|
authors = [{ name = "Dan Fellin", email = "dan@polyapi.io" }]
|
|
9
9
|
dependencies = [
|
|
@@ -32,4 +32,5 @@ exclude = ["polyapi/poly*", "polyapi/vari*", "polyapi/.config.env", "polyapi/cac
|
|
|
32
32
|
|
|
33
33
|
[tool.mypy]
|
|
34
34
|
# for now redef errors happen sometimes, we will clean this up in the future!
|
|
35
|
-
disable_error_code = "no-redef,name-defined"
|
|
35
|
+
disable_error_code = "no-redef,name-defined"
|
|
36
|
+
implicit_optional = true
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi_python.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
{polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi_python.egg-info/requires.txt
RENAMED
|
File without changes
|
{polyapi_python-0.3.3.dev7 → polyapi_python-0.3.3.dev9}/polyapi_python.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|