Network Storage API
Project description
pnap-network-storage-api
Create, list, edit, and delete storage networks with the Network Storage API. Use storage networks to expand storage capacity on a private network.
Knowledge base articles to help you can be found
here
All URLs are relative to (https://api.phoenixnap.com/network-storage/v1/)
This Python package is automatically generated by the OpenAPI Generator project:
- API version: 1.0 For more information, please visit https://phoenixnap.com/
Requirements.
Python >=3.6
Installation & Usage
pip install
You can install this package directly from the Python Package Index using:
$ pip install pnap_network_storage_api
Then import the package:
import pnap_network_storage_api
Setuptools
Install via Setuptools.
python setup.py install --user
(or sudo python setup.py install
to install the package for all users)
Then import the package:
import pnap_network_storage_api
Getting Started
Please follow the installation procedure and then run the following:
import time
import pnap_network_storage_api
from pprint import pprint
from pnap_network_storage_api.api import storage_networks_api
from pnap_network_storage_api.model.error import Error
from pnap_network_storage_api.model.storage_network import StorageNetwork
from pnap_network_storage_api.model.storage_network_create import StorageNetworkCreate
from pnap_network_storage_api.model.storage_network_update import StorageNetworkUpdate
from pnap_network_storage_api.model.volume import Volume
# Defining the host is optional and defaults to https://api.phoenixnap.com/network-storage/v1
# See configuration.py for a list of all supported configuration parameters.
configuration = pnap_network_storage_api.Configuration(
host = "https://api.phoenixnap.com/network-storage/v1"
)
# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.
# Configure OAuth2 access token for authorization: OAuth2
configuration = pnap_network_storage_api.Configuration(
host = "https://api.phoenixnap.com/network-storage/v1"
)
configuration.access_token = 'YOUR_ACCESS_TOKEN'
# Enter a context with an instance of the API client
with pnap_network_storage_api.ApiClient(configuration) as api_client:
# Create an instance of the API class
api_instance = storage_networks_api.StorageNetworksApi(api_client)
location = "PHX" # str | If present will filter the result by the given location. (optional)
try:
# List all storage networks.
api_response = api_instance.storage_networks_get(location=location)
pprint(api_response)
except pnap_network_storage_api.ApiException as e:
print("Exception when calling StorageNetworksApi->storage_networks_get: %s\n" % e)
To generate a token using the python-keycloak library:
from keycloak import KeycloakOpenID
clientId = "YOUR_CLIENT_ID"
clientSecret = "YOUR_CLIENT_SECRET"
serverUrl = "https://auth.phoenixnap.com/auth/"
realmName = "BMC"
grantType = "client_credentials"
keycloakOpenId = KeycloakOpenID(server_url=serverUrl,
realm_name=realmName,
client_id=clientId,
client_secret_key=clientSecret)
ACCESS_TOKEN = keycloakOpenId.token(grant_type=grantType)['access_token']
Documentation for API Endpoints
All URIs are relative to https://api.phoenixnap.com/network-storage/v1
Class | Method | HTTP request | Description |
---|---|---|---|
StorageNetworksApi | storage_networks_get | GET /storage-networks | List all storage networks. |
StorageNetworksApi | storage_networks_id_delete | DELETE /storage-networks/{storageNetworkId} | Delete a storage network and its volume. |
StorageNetworksApi | storage_networks_id_get | GET /storage-networks/{storageNetworkId} | Get storage network details. |
StorageNetworksApi | storage_networks_id_patch | PATCH /storage-networks/{storageNetworkId} | Update storage network details. |
StorageNetworksApi | storage_networks_post | POST /storage-networks | Create a storage network and volume. |
StorageNetworksApi | storage_networks_storage_network_id_volumes_get | GET /storage-networks/{storageNetworkId}/volumes | Display one or more volumes belonging to a storage network. |
StorageNetworksApi | storage_networks_storage_network_id_volumes_volume_id_get | GET /storage-networks/{storageNetworkId}/volumes/{volumeId} | Get a storage network's volume details. |
Documentation For Models
- Error
- NfsPermissions
- Permissions
- Status
- StorageNetwork
- StorageNetworkCreate
- StorageNetworkUpdate
- Volume
- VolumeCreate
Documentation For Authorization
OAuth2
- Type: OAuth
- Flow: application
- Authorization URL:
- Scopes:
- networkstorage: Grants full access to Network Storage API.
- networkstorage.read: Grants read only access to Network Storage API.
Author
Notes for Large OpenAPI documents
If the OpenAPI document is large, imports in pnap_network_storage_api.apis and pnap_network_storage_api.models may fail with a RecursionError indicating the maximum recursion limit has been exceeded. In that case, there are a couple of solutions:
Solution 1: Use specific imports for apis and models like:
from pnap_network_storage_api.api.default_api import DefaultApi
from pnap_network_storage_api.model.pet import Pet
Solution 2: Before importing the package, adjust the maximum recursion limit as shown below:
import sys
sys.setrecursionlimit(1500)
import pnap_network_storage_api
from pnap_network_storage_api.apis import *
from pnap_network_storage_api.models import *
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
Hashes for pnap-network-storage-api-1.0.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | ee75940331457082b2bb0ad99a3d054868e110dae7cd55e23f9f23caa6bdf950 |
|
MD5 | f1a5d877288761cfd85e6021657c1621 |
|
BLAKE2b-256 | ab1785fbd2ea9884de65f675e44e04d2c9c69c7c2e4a5d6117d05bb7d69321af |
Hashes for pnap_network_storage_api-1.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 73fe78d3cfc779ea7f16bc224178106dc19db3ed8a05dd3a2645d37f63195c0e |
|
MD5 | 0fd8ce4bf0ee6e4a1e951b1a98eea1a9 |
|
BLAKE2b-256 | ea779fd9e5368a8f0a3715c1c17bc31a1c3d4da37b6463010aaca357e641cae0 |