neris-api-client 1.2.0__tar.gz → 1.2.0.post0__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.
@@ -0,0 +1,104 @@
1
+ Metadata-Version: 2.1
2
+ Name: neris_api_client
3
+ Version: 1.2.0.post0
4
+ Summary: NERIS API Client
5
+ Author-email: Ben Coleman <ben.coleman@ul.org>, Tommy Messbauer <thomas.messbauer@ul.org>
6
+ Project-URL: Homepage, https://github.com/ulfsri/neris-api-client
7
+ Project-URL: Issues, https://neris.atlassian.net/servicedesk/customer/portal/3/group/3/create/10027
8
+ Classifier: Programming Language :: Python :: 3
9
+ Classifier: License :: OSI Approved :: MIT License
10
+ Classifier: Operating System :: OS Independent
11
+ Requires-Python: >=3.8
12
+ Description-Content-Type: text/markdown
13
+ License-File: LICENSE
14
+ Requires-Dist: requests
15
+ Requires-Dist: pydantic[email]>=2
16
+ Requires-Dist: python-dotenv
17
+
18
+ # NERIS API Client
19
+
20
+ A Python class to interact with the NERIS API programmatically.
21
+
22
+ ## Installation
23
+
24
+ To install:
25
+ ```bash
26
+ pip install neris-api-client
27
+ ```
28
+ Package published on PyPi: [`NERIS API Client`](https://pypi.org/project/neris-api-client/)
29
+
30
+ ## Usage
31
+
32
+ **Auth with password `auth` flow**
33
+
34
+ All config parameters can be specified as environment variables prefixed with `NERIS_` e.g. `NERIS_GRANT_TYPE=password`.
35
+ ```python
36
+ from neris_api_client import NerisApiClient, Config
37
+
38
+ client = NerisApiClient(
39
+ Config(
40
+ base_url="https://api-test.neris.fsri.org/v1",
41
+ grant_type="password",
42
+ username="neris.user@email.co",
43
+ password="*******",
44
+ )
45
+ )
46
+
47
+ # Get an entity
48
+ entity = client.get_entity("FD24027240")
49
+
50
+ # If MFA enabled, prompt for auth challenge answer
51
+ Provide MFA code for email_otp: ******
52
+ ```
53
+
54
+ **Auth with `client_credentials` auth flow**
55
+
56
+ All config parameters can be specified as environment variables prefixed with `NERIS_` e.g. `NERIS_GRANT_TYPE=client_credentials`.
57
+ ```python
58
+ from neris_api_client import NerisApiClient, Config
59
+
60
+ client = NerisApiClient(
61
+ Config(
62
+ base_url="https://api-test.neris.fsri.org/v1",
63
+ grant_type="client_credentials",
64
+ client_id="********************",
65
+ client_secret="***************",
66
+ )
67
+ )
68
+
69
+ # Get an entity
70
+ entity = client.get_entity("FD24027240")
71
+ ```
72
+
73
+ **Using environment varables to instantiate the library**
74
+
75
+ [Configuration should be stored in the environment](https://12factor.net/config). The following uses `dotenv` to load the configuration, but you can use whatever you like. In the cloud, you might load all of these values into the environment from an encrypted parameter store.
76
+
77
+ All variables prefixed are prefixed with `NERIS_`
78
+
79
+ * See [env.example](./examples/.env.example) for the parameter options.
80
+ * Store the `/env` file in the current working directory.
81
+
82
+ ```python
83
+ from dotenv import load_dotenv
84
+ from neris_api_client import NerisApiClient, Config
85
+
86
+ # Credentials must be defined in .env
87
+ load_dotenv()
88
+ client = NerisApiClient()
89
+
90
+ # Get an entity
91
+ entity = client.get_entity("FD24027240")
92
+ ```
93
+
94
+ ## Disclaimer
95
+ The models in this package are generated using [`datamodel-code-generator`](https://github.com/koxudaxi/datamodel-code-generator) and are not guaranteed
96
+ to contain all of the information present in the full specification. The generated models are used to validate request payloads prior to
97
+ API submission.
98
+
99
+ ## Additional Information
100
+ To ask a question, make a suggestion, or otherwise get help with the NERIS API Client, please visit [the NERIS helpdesk](https://neris.atlassian.net/servicedesk/customer/portals).
101
+
102
+ **Beta sandbox users**:
103
+ - Be sure to use the base URL `https://api-test.neris.fsri.org/v1` with the NERIS API Client. You will not be able to authenticate requests in the other environments.
104
+ - For the beta testing period, your user is only authorized to perform actions on behalf of the FSRI Fire Department `FD24027214`.
@@ -0,0 +1,87 @@
1
+ # NERIS API Client
2
+
3
+ A Python class to interact with the NERIS API programmatically.
4
+
5
+ ## Installation
6
+
7
+ To install:
8
+ ```bash
9
+ pip install neris-api-client
10
+ ```
11
+ Package published on PyPi: [`NERIS API Client`](https://pypi.org/project/neris-api-client/)
12
+
13
+ ## Usage
14
+
15
+ **Auth with password `auth` flow**
16
+
17
+ All config parameters can be specified as environment variables prefixed with `NERIS_` e.g. `NERIS_GRANT_TYPE=password`.
18
+ ```python
19
+ from neris_api_client import NerisApiClient, Config
20
+
21
+ client = NerisApiClient(
22
+ Config(
23
+ base_url="https://api-test.neris.fsri.org/v1",
24
+ grant_type="password",
25
+ username="neris.user@email.co",
26
+ password="*******",
27
+ )
28
+ )
29
+
30
+ # Get an entity
31
+ entity = client.get_entity("FD24027240")
32
+
33
+ # If MFA enabled, prompt for auth challenge answer
34
+ Provide MFA code for email_otp: ******
35
+ ```
36
+
37
+ **Auth with `client_credentials` auth flow**
38
+
39
+ All config parameters can be specified as environment variables prefixed with `NERIS_` e.g. `NERIS_GRANT_TYPE=client_credentials`.
40
+ ```python
41
+ from neris_api_client import NerisApiClient, Config
42
+
43
+ client = NerisApiClient(
44
+ Config(
45
+ base_url="https://api-test.neris.fsri.org/v1",
46
+ grant_type="client_credentials",
47
+ client_id="********************",
48
+ client_secret="***************",
49
+ )
50
+ )
51
+
52
+ # Get an entity
53
+ entity = client.get_entity("FD24027240")
54
+ ```
55
+
56
+ **Using environment varables to instantiate the library**
57
+
58
+ [Configuration should be stored in the environment](https://12factor.net/config). The following uses `dotenv` to load the configuration, but you can use whatever you like. In the cloud, you might load all of these values into the environment from an encrypted parameter store.
59
+
60
+ All variables prefixed are prefixed with `NERIS_`
61
+
62
+ * See [env.example](./examples/.env.example) for the parameter options.
63
+ * Store the `/env` file in the current working directory.
64
+
65
+ ```python
66
+ from dotenv import load_dotenv
67
+ from neris_api_client import NerisApiClient, Config
68
+
69
+ # Credentials must be defined in .env
70
+ load_dotenv()
71
+ client = NerisApiClient()
72
+
73
+ # Get an entity
74
+ entity = client.get_entity("FD24027240")
75
+ ```
76
+
77
+ ## Disclaimer
78
+ The models in this package are generated using [`datamodel-code-generator`](https://github.com/koxudaxi/datamodel-code-generator) and are not guaranteed
79
+ to contain all of the information present in the full specification. The generated models are used to validate request payloads prior to
80
+ API submission.
81
+
82
+ ## Additional Information
83
+ To ask a question, make a suggestion, or otherwise get help with the NERIS API Client, please visit [the NERIS helpdesk](https://neris.atlassian.net/servicedesk/customer/portals).
84
+
85
+ **Beta sandbox users**:
86
+ - Be sure to use the base URL `https://api-test.neris.fsri.org/v1` with the NERIS API Client. You will not be able to authenticate requests in the other environments.
87
+ - For the beta testing period, your user is only authorized to perform actions on behalf of the FSRI Fire Department `FD24027214`.
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "neris_api_client"
7
- version = "1.2.0"
7
+ version = "1.2.0.post0"
8
8
  authors = [
9
9
  { name="Ben Coleman", email="ben.coleman@ul.org" },
10
10
  { name="Tommy Messbauer", email="thomas.messbauer@ul.org" },
@@ -0,0 +1,104 @@
1
+ Metadata-Version: 2.1
2
+ Name: neris_api_client
3
+ Version: 1.2.0.post0
4
+ Summary: NERIS API Client
5
+ Author-email: Ben Coleman <ben.coleman@ul.org>, Tommy Messbauer <thomas.messbauer@ul.org>
6
+ Project-URL: Homepage, https://github.com/ulfsri/neris-api-client
7
+ Project-URL: Issues, https://neris.atlassian.net/servicedesk/customer/portal/3/group/3/create/10027
8
+ Classifier: Programming Language :: Python :: 3
9
+ Classifier: License :: OSI Approved :: MIT License
10
+ Classifier: Operating System :: OS Independent
11
+ Requires-Python: >=3.8
12
+ Description-Content-Type: text/markdown
13
+ License-File: LICENSE
14
+ Requires-Dist: requests
15
+ Requires-Dist: pydantic[email]>=2
16
+ Requires-Dist: python-dotenv
17
+
18
+ # NERIS API Client
19
+
20
+ A Python class to interact with the NERIS API programmatically.
21
+
22
+ ## Installation
23
+
24
+ To install:
25
+ ```bash
26
+ pip install neris-api-client
27
+ ```
28
+ Package published on PyPi: [`NERIS API Client`](https://pypi.org/project/neris-api-client/)
29
+
30
+ ## Usage
31
+
32
+ **Auth with password `auth` flow**
33
+
34
+ All config parameters can be specified as environment variables prefixed with `NERIS_` e.g. `NERIS_GRANT_TYPE=password`.
35
+ ```python
36
+ from neris_api_client import NerisApiClient, Config
37
+
38
+ client = NerisApiClient(
39
+ Config(
40
+ base_url="https://api-test.neris.fsri.org/v1",
41
+ grant_type="password",
42
+ username="neris.user@email.co",
43
+ password="*******",
44
+ )
45
+ )
46
+
47
+ # Get an entity
48
+ entity = client.get_entity("FD24027240")
49
+
50
+ # If MFA enabled, prompt for auth challenge answer
51
+ Provide MFA code for email_otp: ******
52
+ ```
53
+
54
+ **Auth with `client_credentials` auth flow**
55
+
56
+ All config parameters can be specified as environment variables prefixed with `NERIS_` e.g. `NERIS_GRANT_TYPE=client_credentials`.
57
+ ```python
58
+ from neris_api_client import NerisApiClient, Config
59
+
60
+ client = NerisApiClient(
61
+ Config(
62
+ base_url="https://api-test.neris.fsri.org/v1",
63
+ grant_type="client_credentials",
64
+ client_id="********************",
65
+ client_secret="***************",
66
+ )
67
+ )
68
+
69
+ # Get an entity
70
+ entity = client.get_entity("FD24027240")
71
+ ```
72
+
73
+ **Using environment varables to instantiate the library**
74
+
75
+ [Configuration should be stored in the environment](https://12factor.net/config). The following uses `dotenv` to load the configuration, but you can use whatever you like. In the cloud, you might load all of these values into the environment from an encrypted parameter store.
76
+
77
+ All variables prefixed are prefixed with `NERIS_`
78
+
79
+ * See [env.example](./examples/.env.example) for the parameter options.
80
+ * Store the `/env` file in the current working directory.
81
+
82
+ ```python
83
+ from dotenv import load_dotenv
84
+ from neris_api_client import NerisApiClient, Config
85
+
86
+ # Credentials must be defined in .env
87
+ load_dotenv()
88
+ client = NerisApiClient()
89
+
90
+ # Get an entity
91
+ entity = client.get_entity("FD24027240")
92
+ ```
93
+
94
+ ## Disclaimer
95
+ The models in this package are generated using [`datamodel-code-generator`](https://github.com/koxudaxi/datamodel-code-generator) and are not guaranteed
96
+ to contain all of the information present in the full specification. The generated models are used to validate request payloads prior to
97
+ API submission.
98
+
99
+ ## Additional Information
100
+ To ask a question, make a suggestion, or otherwise get help with the NERIS API Client, please visit [the NERIS helpdesk](https://neris.atlassian.net/servicedesk/customer/portals).
101
+
102
+ **Beta sandbox users**:
103
+ - Be sure to use the base URL `https://api-test.neris.fsri.org/v1` with the NERIS API Client. You will not be able to authenticate requests in the other environments.
104
+ - For the beta testing period, your user is only authorized to perform actions on behalf of the FSRI Fire Department `FD24027214`.
@@ -1,55 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: neris_api_client
3
- Version: 1.2.0
4
- Summary: NERIS API Client
5
- Author-email: Ben Coleman <ben.coleman@ul.org>, Tommy Messbauer <thomas.messbauer@ul.org>
6
- Project-URL: Homepage, https://github.com/ulfsri/neris-api-client
7
- Project-URL: Issues, https://neris.atlassian.net/servicedesk/customer/portal/3/group/3/create/10027
8
- Classifier: Programming Language :: Python :: 3
9
- Classifier: License :: OSI Approved :: MIT License
10
- Classifier: Operating System :: OS Independent
11
- Requires-Python: >=3.8
12
- Description-Content-Type: text/markdown
13
- License-File: LICENSE
14
- Requires-Dist: requests
15
- Requires-Dist: pydantic[email]>=2
16
- Requires-Dist: python-dotenv
17
-
18
- # NERIS API Client
19
-
20
- A Python class to interact with the NERIS API programmatically.
21
-
22
- ## Usage
23
-
24
- To install:
25
- ```bash
26
- pip install neris-api-client
27
- ```
28
- Package lives on pypi: [`NERIS API Client`](https://pypi.org/project/neris-api-client/)
29
-
30
- The client requires a username and password for authentication and authorization of requests unless the `env` argument is set to `local`
31
- at instantiation. The `local` environment is intended for development use on local machines and bypasses auth.
32
-
33
- ```python
34
- from neris_api_client import NerisApiClient
35
-
36
- client = NerisApiClient(username="neris.user@email.co", password="*******", env="test")
37
-
38
- # Get an entity
39
- entity = client.get_entity("FD24027240")
40
- ```
41
-
42
- API auth tokens are cached locally in `./.token_cache`. If there are auth issues first try instantiating the client with `use_cache=False`
43
- keyword argument or deleting the token cache.
44
-
45
- ## Disclaimer
46
- The models in this package are generated using [`datamodel-code-generator`](https://github.com/koxudaxi/datamodel-code-generator) and are not guaranteed
47
- to contain all of the information present in the full specification. The generated models are used to validate request payloads prior to
48
- API submission.
49
-
50
- ## Additional Information
51
- To ask a question, make a suggestion, or otherwise get help with the NERIS API Client, please visit [the NERIS helpdesk](https://neris.atlassian.net/servicedesk/customer/portals).
52
-
53
- **Beta sandbox users**:
54
- - Be sure to use the `test` environment with the NERIS API Client. You will not be able to authenticate requests in the other environments.
55
- - For the beta testing period, your user is only authorized to perform actions on behalf of the FSRI Fire Department `FD24027214`.
@@ -1,38 +0,0 @@
1
- # NERIS API Client
2
-
3
- A Python class to interact with the NERIS API programmatically.
4
-
5
- ## Usage
6
-
7
- To install:
8
- ```bash
9
- pip install neris-api-client
10
- ```
11
- Package lives on pypi: [`NERIS API Client`](https://pypi.org/project/neris-api-client/)
12
-
13
- The client requires a username and password for authentication and authorization of requests unless the `env` argument is set to `local`
14
- at instantiation. The `local` environment is intended for development use on local machines and bypasses auth.
15
-
16
- ```python
17
- from neris_api_client import NerisApiClient
18
-
19
- client = NerisApiClient(username="neris.user@email.co", password="*******", env="test")
20
-
21
- # Get an entity
22
- entity = client.get_entity("FD24027240")
23
- ```
24
-
25
- API auth tokens are cached locally in `./.token_cache`. If there are auth issues first try instantiating the client with `use_cache=False`
26
- keyword argument or deleting the token cache.
27
-
28
- ## Disclaimer
29
- The models in this package are generated using [`datamodel-code-generator`](https://github.com/koxudaxi/datamodel-code-generator) and are not guaranteed
30
- to contain all of the information present in the full specification. The generated models are used to validate request payloads prior to
31
- API submission.
32
-
33
- ## Additional Information
34
- To ask a question, make a suggestion, or otherwise get help with the NERIS API Client, please visit [the NERIS helpdesk](https://neris.atlassian.net/servicedesk/customer/portals).
35
-
36
- **Beta sandbox users**:
37
- - Be sure to use the `test` environment with the NERIS API Client. You will not be able to authenticate requests in the other environments.
38
- - For the beta testing period, your user is only authorized to perform actions on behalf of the FSRI Fire Department `FD24027214`.
@@ -1,55 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: neris_api_client
3
- Version: 1.2.0
4
- Summary: NERIS API Client
5
- Author-email: Ben Coleman <ben.coleman@ul.org>, Tommy Messbauer <thomas.messbauer@ul.org>
6
- Project-URL: Homepage, https://github.com/ulfsri/neris-api-client
7
- Project-URL: Issues, https://neris.atlassian.net/servicedesk/customer/portal/3/group/3/create/10027
8
- Classifier: Programming Language :: Python :: 3
9
- Classifier: License :: OSI Approved :: MIT License
10
- Classifier: Operating System :: OS Independent
11
- Requires-Python: >=3.8
12
- Description-Content-Type: text/markdown
13
- License-File: LICENSE
14
- Requires-Dist: requests
15
- Requires-Dist: pydantic[email]>=2
16
- Requires-Dist: python-dotenv
17
-
18
- # NERIS API Client
19
-
20
- A Python class to interact with the NERIS API programmatically.
21
-
22
- ## Usage
23
-
24
- To install:
25
- ```bash
26
- pip install neris-api-client
27
- ```
28
- Package lives on pypi: [`NERIS API Client`](https://pypi.org/project/neris-api-client/)
29
-
30
- The client requires a username and password for authentication and authorization of requests unless the `env` argument is set to `local`
31
- at instantiation. The `local` environment is intended for development use on local machines and bypasses auth.
32
-
33
- ```python
34
- from neris_api_client import NerisApiClient
35
-
36
- client = NerisApiClient(username="neris.user@email.co", password="*******", env="test")
37
-
38
- # Get an entity
39
- entity = client.get_entity("FD24027240")
40
- ```
41
-
42
- API auth tokens are cached locally in `./.token_cache`. If there are auth issues first try instantiating the client with `use_cache=False`
43
- keyword argument or deleting the token cache.
44
-
45
- ## Disclaimer
46
- The models in this package are generated using [`datamodel-code-generator`](https://github.com/koxudaxi/datamodel-code-generator) and are not guaranteed
47
- to contain all of the information present in the full specification. The generated models are used to validate request payloads prior to
48
- API submission.
49
-
50
- ## Additional Information
51
- To ask a question, make a suggestion, or otherwise get help with the NERIS API Client, please visit [the NERIS helpdesk](https://neris.atlassian.net/servicedesk/customer/portals).
52
-
53
- **Beta sandbox users**:
54
- - Be sure to use the `test` environment with the NERIS API Client. You will not be able to authenticate requests in the other environments.
55
- - For the beta testing period, your user is only authorized to perform actions on behalf of the FSRI Fire Department `FD24027214`.