apitally 0.3.1__tar.gz → 0.3.2__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: apitally
3
- Version: 0.3.1
3
+ Version: 0.3.2
4
4
  Summary: Apitally client library for Python
5
5
  Home-page: https://docs.apitally.io
6
6
  License: MIT
@@ -30,7 +30,7 @@ Requires-Dist: fastapi (>=0.87.0) ; extra == "fastapi"
30
30
  Requires-Dist: flask (>=2.0.0) ; extra == "flask"
31
31
  Requires-Dist: httpx (>=0.22.0) ; extra == "fastapi" or extra == "starlette"
32
32
  Requires-Dist: requests (>=2.26.0) ; extra == "django-rest-framework" or extra == "django-ninja" or extra == "flask"
33
- Requires-Dist: starlette (>=0.21.0) ; extra == "fastapi" or extra == "starlette"
33
+ Requires-Dist: starlette (>=0.21.0,<1.0.0) ; extra == "fastapi" or extra == "starlette"
34
34
  Project-URL: Documentation, https://docs.apitally.io
35
35
  Project-URL: Repository, https://github.com/apitally/python-client
36
36
  Description-Content-Type: text/markdown
@@ -45,7 +45,7 @@ Description-Content-Type: text/markdown
45
45
 
46
46
  <p align="center"><b>Your refreshingly simple REST API companion.</b></p>
47
47
 
48
- <p align="center"><i>Apitally offers API traffic monitoring and integrated API key management that is extremely easy to set up and use with new and existing API projects. No assumptions made about your infrastructure, no extra tools for you to host and maintain, no data privacy worries.</i></p>
48
+ <p align="center"><i>Apitally offers busy engineering teams a simple and affordable API monitoring and API key management solution that is easy to set up and use with new and existing API projects.</i></p>
49
49
 
50
50
  <p align="center">🔗 <b><a href="https://apitally.io" target="_blank">apitally.io</a></b></p>
51
51
 
@@ -53,13 +53,13 @@ Description-Content-Type: text/markdown
53
53
 
54
54
  ---
55
55
 
56
- # Apitally client for Python
56
+ # Apitally client library for Python
57
57
 
58
58
  [![Tests](https://github.com/apitally/python-client/actions/workflows/tests.yaml/badge.svg?event=push)](https://github.com/apitally/python-client/actions)
59
59
  [![Codecov](https://codecov.io/gh/apitally/python-client/graph/badge.svg?token=UNLYBY4Y3V)](https://codecov.io/gh/apitally/python-client)
60
60
  [![PyPI](https://img.shields.io/pypi/v/apitally?logo=pypi&logoColor=white&color=%23006dad)](https://pypi.org/project/apitally/)
61
61
 
62
- This client library currently supports the following frameworks:
62
+ This client library for Apitally currently supports the following Python web frameworks:
63
63
 
64
64
  - [FastAPI](https://docs.apitally.io/frameworks/fastapi)
65
65
  - [Starlette](https://docs.apitally.io/frameworks/starlette)
@@ -67,6 +67,14 @@ This client library currently supports the following frameworks:
67
67
  - [Django Ninja](https://docs.apitally.io/frameworks/django-ninja)
68
68
  - [Django REST Framework](https://docs.apitally.io/frameworks/django-rest-framework)
69
69
 
70
+ Learn more about Apitally on our 🌎 [website](https://apitally.io) or check out the 📚 [documentation](https://docs.apitally.io).
71
+
72
+ ## Key features
73
+
74
+ - Middleware for different frameworks to capture metadata about API endpoints, requests and responses (no sensitive data is captured)
75
+ - Non-blocking clients that aggregate and send captured data to Apitally and optionally synchronize API key hashes in 1 minute intervals
76
+ - Functions to easily secure endpoints with API key authentication and permission checks
77
+
70
78
  ## Install
71
79
 
72
80
  Use `pip` to install and provide your framework of choice as an extra, for example:
@@ -79,10 +87,12 @@ The available extras are: `fastapi`, `starlette`, `flask`, `django_ninja` and `d
79
87
 
80
88
  ## Usage
81
89
 
82
- Below are basic usage examples for each supported framework. For further instructions and examples, including how to identify consumers and use API key authentication, check out our [documentation](https://docs.apitally.io/).
90
+ Our [setup guides](https://docs.apitally.io/quickstart) include all the details you need to get started.
83
91
 
84
92
  ### FastAPI
85
93
 
94
+ This is an example of how to add the Apitally middleware to a FastAPI application. For further instructions, see our [setup guide for FastAPI](https://docs.apitally.io/frameworks/fastapi).
95
+
86
96
  ```python
87
97
  from fastapi import FastAPI
88
98
  from apitally.fastapi import ApitallyMiddleware
@@ -97,6 +107,8 @@ app.add_middleware(
97
107
 
98
108
  ### Starlette
99
109
 
110
+ This is an example of how to add the Apitally middleware to a Starlette application. For further instructions, see our [setup guide for Starlette](https://docs.apitally.io/frameworks/starlette).
111
+
100
112
  ```python
101
113
  from starlette.applications import Starlette
102
114
  from apitally.starlette import ApitallyMiddleware
@@ -111,6 +123,8 @@ app.add_middleware(
111
123
 
112
124
  ### Flask
113
125
 
126
+ This is an example of how to add the Apitally middleware to a Flask application. For further instructions, see our [setup guide for Flask](https://docs.apitally.io/frameworks/flask).
127
+
114
128
  ```python
115
129
  from flask import Flask
116
130
  from apitally.flask import ApitallyMiddleware
@@ -125,6 +139,8 @@ app.wsgi_app = ApitallyMiddleware(
125
139
 
126
140
  ### Django Ninja
127
141
 
142
+ This is an example of how to add the Apitally middleware to a Django Ninja application. For further instructions, see our [setup guide for Django Ninja](https://docs.apitally.io/frameworks/django-ninja).
143
+
128
144
  In your Django `settings.py` file:
129
145
 
130
146
  ```python
@@ -140,6 +156,8 @@ APITALLY_MIDDLEWARE = {
140
156
 
141
157
  ### Django REST Framework
142
158
 
159
+ This is an example of how to add the Apitally middleware to a Django REST Framework application. For further instructions, see our [setup guide for Django REST Framework](https://docs.apitally.io/frameworks/django-rest-framework).
160
+
143
161
  In your Django `settings.py` file:
144
162
 
145
163
  ```python
@@ -155,7 +173,7 @@ APITALLY_MIDDLEWARE = {
155
173
 
156
174
  ## Getting help
157
175
 
158
- If you need help please join our [Apitally community on Slack](https://apitally-community.slack.com/) or [create a new discussion](https://github.com/orgs/apitally/discussions/categories/q-a) on GitHub.
176
+ If you need help please [create a new discussion](https://github.com/orgs/apitally/discussions/categories/q-a) on GitHub.
159
177
 
160
178
  ## License
161
179
 
@@ -8,7 +8,7 @@
8
8
 
9
9
  <p align="center"><b>Your refreshingly simple REST API companion.</b></p>
10
10
 
11
- <p align="center"><i>Apitally offers API traffic monitoring and integrated API key management that is extremely easy to set up and use with new and existing API projects. No assumptions made about your infrastructure, no extra tools for you to host and maintain, no data privacy worries.</i></p>
11
+ <p align="center"><i>Apitally offers busy engineering teams a simple and affordable API monitoring and API key management solution that is easy to set up and use with new and existing API projects.</i></p>
12
12
 
13
13
  <p align="center">🔗 <b><a href="https://apitally.io" target="_blank">apitally.io</a></b></p>
14
14
 
@@ -16,13 +16,13 @@
16
16
 
17
17
  ---
18
18
 
19
- # Apitally client for Python
19
+ # Apitally client library for Python
20
20
 
21
21
  [![Tests](https://github.com/apitally/python-client/actions/workflows/tests.yaml/badge.svg?event=push)](https://github.com/apitally/python-client/actions)
22
22
  [![Codecov](https://codecov.io/gh/apitally/python-client/graph/badge.svg?token=UNLYBY4Y3V)](https://codecov.io/gh/apitally/python-client)
23
23
  [![PyPI](https://img.shields.io/pypi/v/apitally?logo=pypi&logoColor=white&color=%23006dad)](https://pypi.org/project/apitally/)
24
24
 
25
- This client library currently supports the following frameworks:
25
+ This client library for Apitally currently supports the following Python web frameworks:
26
26
 
27
27
  - [FastAPI](https://docs.apitally.io/frameworks/fastapi)
28
28
  - [Starlette](https://docs.apitally.io/frameworks/starlette)
@@ -30,6 +30,14 @@ This client library currently supports the following frameworks:
30
30
  - [Django Ninja](https://docs.apitally.io/frameworks/django-ninja)
31
31
  - [Django REST Framework](https://docs.apitally.io/frameworks/django-rest-framework)
32
32
 
33
+ Learn more about Apitally on our 🌎 [website](https://apitally.io) or check out the 📚 [documentation](https://docs.apitally.io).
34
+
35
+ ## Key features
36
+
37
+ - Middleware for different frameworks to capture metadata about API endpoints, requests and responses (no sensitive data is captured)
38
+ - Non-blocking clients that aggregate and send captured data to Apitally and optionally synchronize API key hashes in 1 minute intervals
39
+ - Functions to easily secure endpoints with API key authentication and permission checks
40
+
33
41
  ## Install
34
42
 
35
43
  Use `pip` to install and provide your framework of choice as an extra, for example:
@@ -42,10 +50,12 @@ The available extras are: `fastapi`, `starlette`, `flask`, `django_ninja` and `d
42
50
 
43
51
  ## Usage
44
52
 
45
- Below are basic usage examples for each supported framework. For further instructions and examples, including how to identify consumers and use API key authentication, check out our [documentation](https://docs.apitally.io/).
53
+ Our [setup guides](https://docs.apitally.io/quickstart) include all the details you need to get started.
46
54
 
47
55
  ### FastAPI
48
56
 
57
+ This is an example of how to add the Apitally middleware to a FastAPI application. For further instructions, see our [setup guide for FastAPI](https://docs.apitally.io/frameworks/fastapi).
58
+
49
59
  ```python
50
60
  from fastapi import FastAPI
51
61
  from apitally.fastapi import ApitallyMiddleware
@@ -60,6 +70,8 @@ app.add_middleware(
60
70
 
61
71
  ### Starlette
62
72
 
73
+ This is an example of how to add the Apitally middleware to a Starlette application. For further instructions, see our [setup guide for Starlette](https://docs.apitally.io/frameworks/starlette).
74
+
63
75
  ```python
64
76
  from starlette.applications import Starlette
65
77
  from apitally.starlette import ApitallyMiddleware
@@ -74,6 +86,8 @@ app.add_middleware(
74
86
 
75
87
  ### Flask
76
88
 
89
+ This is an example of how to add the Apitally middleware to a Flask application. For further instructions, see our [setup guide for Flask](https://docs.apitally.io/frameworks/flask).
90
+
77
91
  ```python
78
92
  from flask import Flask
79
93
  from apitally.flask import ApitallyMiddleware
@@ -88,6 +102,8 @@ app.wsgi_app = ApitallyMiddleware(
88
102
 
89
103
  ### Django Ninja
90
104
 
105
+ This is an example of how to add the Apitally middleware to a Django Ninja application. For further instructions, see our [setup guide for Django Ninja](https://docs.apitally.io/frameworks/django-ninja).
106
+
91
107
  In your Django `settings.py` file:
92
108
 
93
109
  ```python
@@ -103,6 +119,8 @@ APITALLY_MIDDLEWARE = {
103
119
 
104
120
  ### Django REST Framework
105
121
 
122
+ This is an example of how to add the Apitally middleware to a Django REST Framework application. For further instructions, see our [setup guide for Django REST Framework](https://docs.apitally.io/frameworks/django-rest-framework).
123
+
106
124
  In your Django `settings.py` file:
107
125
 
108
126
  ```python
@@ -118,7 +136,7 @@ APITALLY_MIDDLEWARE = {
118
136
 
119
137
  ## Getting help
120
138
 
121
- If you need help please join our [Apitally community on Slack](https://apitally-community.slack.com/) or [create a new discussion](https://github.com/orgs/apitally/discussions/categories/q-a) on GitHub.
139
+ If you need help please [create a new discussion](https://github.com/orgs/apitally/discussions/categories/q-a) on GitHub.
122
140
 
123
141
  ## License
124
142
 
@@ -0,0 +1 @@
1
+ __version__ = "0.3.2"
@@ -4,7 +4,7 @@ build-backend = "poetry_dynamic_versioning.backend"
4
4
 
5
5
  [tool.poetry]
6
6
  name = "apitally"
7
- version = "0.3.1"
7
+ version = "0.3.2"
8
8
  description = "Apitally client library for Python"
9
9
  readme = "README.md"
10
10
  authors = ["Apitally <hello@apitally.io>"]
@@ -31,10 +31,9 @@ fastapi = { version = ">=0.87.0", optional = true }
31
31
  flask = { version = ">=2.0.0", optional = true }
32
32
  httpx = { version = ">=0.22.0", optional = true }
33
33
  requests = { version = ">=2.26.0", optional = true }
34
- starlette = { version = ">=0.21.0", optional = true }
34
+ starlette = { version = ">=0.21.0,<1.0.0", optional = true }
35
35
 
36
36
  [tool.poetry.group.dev.dependencies]
37
- black = "^23.10.1"
38
37
  mypy = "^1.6.1"
39
38
  pre-commit = "^3.5.0"
40
39
  ruff = "^0.1.3"
@@ -72,13 +71,10 @@ enable = false
72
71
  style = "semver"
73
72
  vcs = "git"
74
73
 
75
- [tool.black]
76
- line-length = 120
77
- target-version = ["py311"]
78
-
79
74
  [tool.ruff]
80
75
  ignore = ["E501"]
81
76
  select = ["E", "F", "W", "I"]
77
+ line-length = 120
82
78
  target-version = "py311"
83
79
 
84
80
  [tool.ruff.isort]
@@ -1 +0,0 @@
1
- __version__ = "0.3.1"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes