Metadata-Version: 2.4
Name: sdksio-verizon-apis-sdk
Version: 2.0.0
Summary: Use the Verizon API for connectivity management, device diagnostics, device location, edge discovery service, edge performance, software management and much more.
Author-email: developer-sdksio <developer+sdksio@apimatic.io>
Project-URL: Documentation, https://www.verizon.com/business/5g-edge-portal/api-documentation.html
Keywords: API,SDK,Verizon,Thingspace
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: apimatic-core>=0.2.24,~=0.2.0
Requires-Dist: apimatic-core-interfaces>=0.1.8,~=0.1.0
Requires-Dist: apimatic-requests-client-adapter>=0.1.10,~=0.1.0
Requires-Dist: python-dotenv<2.0,>=0.21
Requires-Dist: deprecation~=2.1
Provides-Extra: testutils
Requires-Dist: pytest>=7.2.2; extra == "testutils"
Dynamic: license-file


# Getting Started with Verizon

## Introduction

"The Connection Planner is a service that provides devices windows to connect to their backend APIs. The service validates device access permissions and processes valid devices asynchronously. For each batch, it retrieves device connectivity windows from the RAN KPI Data Application, and sends callbacks back to customers via UWS-Callback for both successful and failed device requests."

Best Practices for Callbacks: [https://thingspace.verizon.com/documentation/apis/connectivity-management/working-with-verizon/about-callback-services/best-practices.html](https://thingspace.verizon.com/documentation/apis/connectivity-management/working-with-verizon/about-callback-services/best-practices.html)

## Install the Package

The package is compatible with Python versions `3.7+`.
Install the package from PyPi using the following pip command:

```bash
pip install sdksio-verizon-apis-sdk==2.0.0
```

You can also view the package at:
https://pypi.python.org/pypi/sdksio-verizon-apis-sdk/2.0.0

## Initialize the API Client

**_Note:_** Documentation for the client can be found [here.](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/client.md)

The following parameters are configurable for the API Client:

| Parameter | Type | Description |
|  --- | --- | --- |
| environment | [`Environment`](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/README.md#environments) | The API environment. <br> **Default: `Environment.PRODUCTION`** |
| http_client_instance | `Union[Session, HttpClientProvider]` | The Http Client passed from the sdk user for making requests |
| override_http_client_configuration | `bool` | The value which determines to override properties of the passed Http Client from the sdk user |
| http_call_back | `HttpCallBack` | The callback value that is invoked before and after an HTTP call is made to an endpoint |
| timeout | `float` | The value to use for connection timeout. <br> **Default: 60** |
| max_retries | `int` | The number of times to retry an endpoint call if it fails. <br> **Default: 0** |
| backoff_factor | `float` | A backoff factor to apply between attempts after the second try. <br> **Default: 2** |
| retry_statuses | `Array of int` | The http statuses on which retry is to be done. <br> **Default: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524]** |
| retry_methods | `Array of string` | The http methods on which retry is to be done. <br> **Default: ["GET", "PUT"]** |
| proxy_settings | [`ProxySettings`](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/proxy-settings.md) | Optional proxy configuration to route HTTP requests through a proxy server. |
| thingspace_oauth_credentials | [`ThingspaceOauthCredentials`](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/auth/oauth-2-client-credentials-grant.md) | The credential object for OAuth 2 Client Credentials Grant |
| vz_m2m_token_credentials | [`VZM2mTokenCredentials`](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/auth/custom-header-signature.md) | The credential object for Custom Header Signature |
| session_token_credentials | [`SessionTokenCredentials`](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/auth/custom-header-signature-1.md) | The credential object for Custom Header Signature |
| thingspace_oauth_1_credentials | [`ThingspaceOauth1Credentials`](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/auth/oauth-2-client-credentials-grant-1.md) | The credential object for OAuth 2 Client Credentials Grant |

The API client can be initialized as follows:

### Code-Based Client Initialization

```python
from verizon.configuration import Environment
from verizon.http.auth.session_token import SessionTokenCredentials
from verizon.http.auth.thingspace_oauth import ThingspaceOauthCredentials
from verizon.http.auth.thingspace_oauth_1 import ThingspaceOauth1Credentials
from verizon.http.auth.vz_m2m_token import VZM2mTokenCredentials
from verizon.verizon_client import VerizonClient

client = VerizonClient(
    thingspace_oauth_credentials=ThingspaceOauthCredentials(
        oauth_client_id='OAuthClientId',
        oauth_client_secret='OAuthClientSecret'
    ),
    vz_m2m_token_credentials=VZM2mTokenCredentials(
        vz_m2m_token='VZ-M2M-Token'
    ),
    session_token_credentials=SessionTokenCredentials(
        session_token='SessionToken'
    ),
    thingspace_oauth_1_credentials=ThingspaceOauth1Credentials(
        oauth_client_id='OAuthClientId',
        oauth_client_secret='OAuthClientSecret'
    ),
    environment=Environment.PRODUCTION
)
```

### Environment-Based Client Initialization

```python
from verizon.verizon_client import VerizonClient

# Specify the path to your .env file if it’s located outside the project’s root directory.
client = VerizonClient.from_environment(dotenv_path='/path/to/.env')
```

See the [Environment-Based Client Initialization](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/environment-based-client-initialization.md) section for details.

## Environments

The SDK can be configured to use a different environment for making API calls. Available environments are:

### Fields

| Name | Description |
|  --- | --- |
| PRODUCTION | **Default** |
| STAGING | - |
| DEV | - |
| QA | - |
| MOCK_SERVER_FOR_LIMITED_AVAILABILITY_SEE_QUICK_START | - |

## Authorization

This API uses the following authentication schemes.

* [`thingspace_oauth (OAuth 2 Client Credentials Grant)`](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/auth/oauth-2-client-credentials-grant.md)
* [`VZ-M2M-Token (Custom Header Signature)`](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/auth/custom-header-signature.md)
* [`sessionToken (Custom Header Signature)`](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/auth/custom-header-signature-1.md)
* [`thingspace_oauth1 (OAuth 2 Client Credentials Grant)`](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/auth/oauth-2-client-credentials-grant-1.md)

## List of APIs

* [Account Service Controller](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/account-service-controller.md)
* [Intelligence Service Controller](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/intelligence-service-controller.md)
* [Device Management](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/device-management.md)
* [Device Groups](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/device-groups.md)
* [Session Management](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/session-management.md)
* [Connectivity Callbacks](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/connectivity-callbacks.md)
* [Account Requests](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/account-requests.md)
* [Service Plans](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/service-plans.md)
* [Device Diagnostics](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/device-diagnostics.md)
* [Device Monitoring](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/device-monitoring.md)
* [Device Profile Management](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/device-profile-management.md)
* [E UICC Device Profile Management](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/e-uicc-device-profile-management.md)
* [Devices Locations](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/devices-locations.md)
* [Devices Location Subscriptions](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/devices-location-subscriptions.md)
* [Device Location Callbacks](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/device-location-callbacks.md)
* [Usage Trigger Management](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/usage-trigger-management.md)
* [Software Management Subscriptions V1](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/software-management-subscriptions-v1.md)
* [Software Management Licenses V1](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/software-management-licenses-v1.md)
* [Firmware V1](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/firmware-v1.md)
* [Software Management Callbacks V1](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/software-management-callbacks-v1.md)
* [Software Management Reports V1](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/software-management-reports-v1.md)
* [Software Management Subscriptions V2](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/software-management-subscriptions-v2.md)
* [Software Management Licenses V2](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/software-management-licenses-v2.md)
* [Campaigns V2](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/campaigns-v2.md)
* [Software Management Callbacks V2](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/software-management-callbacks-v2.md)
* [Software Management Reports V2](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/software-management-reports-v2.md)
* [Client Logging](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/client-logging.md)
* [Server Logging](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/server-logging.md)
* [Configuration Files](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/configuration-files.md)
* [Software Management Subscriptions V3](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/software-management-subscriptions-v3.md)
* [Software Management Licenses V3](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/software-management-licenses-v3.md)
* [Campaigns V3](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/campaigns-v3.md)
* [Software Management Reports V3](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/software-management-reports-v3.md)
* [Firmware V3](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/firmware-v3.md)
* [Account Devices](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/account-devices.md)
* [Software Management Callbacks V3](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/software-management-callbacks-v3.md)
* [SIM Securefor Io T Licenses](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/sim-securefor-io-t-licenses.md)
* [Account Subscriptions](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/account-subscriptions.md)
* [Diagnostics Subscriptions](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/diagnostics-subscriptions.md)
* [Diagnostics Observations](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/diagnostics-observations.md)
* [Diagnostics History](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/diagnostics-history.md)
* [Diagnostics Settings](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/diagnostics-settings.md)
* [Diagnostics Callbacks](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/diagnostics-callbacks.md)
* [Diagnostics Factory Reset](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/diagnostics-factory-reset.md)
* [Cloud Connector Subscriptions](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/cloud-connector-subscriptions.md)
* [Cloud Connector Devices](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/cloud-connector-devices.md)
* [HPL Device Management](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/hpl-device-management.md)
* [Device Service Management](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/device-service-management.md)
* [Device Reports](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/device-reports.md)
* [Hyper Precise Location Callbacks](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/hyper-precise-location-callbacks.md)
* [Device Credential Management](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/device-credential-management.md)
* [Anomaly Settings](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/anomaly-settings.md)
* [Anomaly Triggers](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/anomaly-triggers.md)
* [Anomaly Triggers V2](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/anomaly-triggers-v2.md)
* [Wireless Network Performance](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/wireless-network-performance.md)
* [Managinge SIM Profiles](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/managinge-sim-profiles.md)
* [Device SMS Messaging](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/device-sms-messaging.md)
* [Device Actions](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/device-actions.md)
* [Thing Space Qualityof Service API Actions](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/thing-space-qualityof-service-api-actions.md)
* [Promotion Period Information](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/promotion-period-information.md)
* [Retrievethe Triggers](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/retrievethe-triggers.md)
* [Update Triggers](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/update-triggers.md)
* [SIM Actions](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/sim-actions.md)
* [Global Reporting](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/global-reporting.md)
* [Map Data Manager](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/map-data-manager.md)
* [Retrieve Rate Plan List](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/retrieve-rate-plan-list.md)
* [Create Price Plan Triggers](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/create-price-plan-triggers.md)
* [Update Price Plan Triggers](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/update-price-plan-triggers.md)
* [5G BI Device Actions](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/5g-bi-device-actions.md)
* [Sensor Insights Sensors](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/sensor-insights-sensors.md)
* [Sensor Insights Devices](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/sensor-insights-devices.md)
* [Sensor Insights Gateways](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/sensor-insights-gateways.md)
* [Sensor Insights Smart Alerts](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/sensor-insights-smart-alerts.md)
* [Sensor Insights Rules](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/sensor-insights-rules.md)
* [Sensor Insights Health Score](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/sensor-insights-health-score.md)
* [Sensor Insights Notification Groups](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/sensor-insights-notification-groups.md)
* [Sensor Insights Users](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/sensor-insights-users.md)
* [Sensor Insights Device Profile](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/sensor-insights-device-profile.md)
* [Sensor Insights Smart Alert Metrics](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/sensor-insights-smart-alert-metrics.md)
* [API](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/api.md)
* [Accounts](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/accounts.md)
* [SMS](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/sms.md)
* [Exclusions](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/exclusions.md)
* [Billing](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/billing.md)
* [Targets](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/targets.md)
* [PWN](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/pwn.md)
* [Device-Role-Controller](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/controllers/device-role-controller.md)

## SDK Infrastructure

### Configuration

* [ProxySettings](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/proxy-settings.md)
* [Environment-Based Client Initialization](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/environment-based-client-initialization.md)

### HTTP

* [HttpResponse](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/http-response.md)
* [HttpRequest](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/http-request.md)

### Utilities

* [ApiResponse](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/api-response.md)
* [ApiHelper](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/api-helper.md)
* [HttpDateTime](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/http-date-time.md)
* [RFC3339DateTime](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/rfc3339-date-time.md)
* [UnixDateTime](https://www.github.com/sdks-io/verizon-apis-python-sdk/tree/2.0.0/doc/unix-date-time.md)

