The Audit Logs API lets you read audit log entries and track API calls or activities in the Bare Metal Cloud Portal.
Knowledge base articles to help you can be found
here
All URLs are relative to (https://api.phoenixnap.com/audit/v1/)
This Python package is automatically generated by the OpenAPI Generator project:
- API version: 1.0
- Package version: 2.0.3.dev
- Build package: org.openapitools.codegen.languages.PythonClientCodegen For more information, please visit https://phoenixnap.com/
Python 3.7+
You can install this package directly from the Python Package Index using:
$ pip install pnap_audit_api
Then import the package:
import pnap_audit_api
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_audit_api
import time
import pnap_audit_api
from pnap_audit_api.rest import ApiException
from pprint import pprint
# Defining the host is optional and defaults to https://api.phoenixnap.com/audit/v1
# See configuration.py for a list of all supported configuration parameters.
configuration = pnap_audit_api.Configuration(
host = "https://api.phoenixnap.com/audit/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.
configuration.access_token = os.environ["ACCESS_TOKEN"]
# Enter a context with an instance of the API client
with pnap_audit_api.ApiClient(configuration) as api_client:
# Create an instance of the API class
api_instance = pnap_audit_api.EventsApi(api_client)
var_from = '2021-04-27T16:24:57.123Z' # datetime | From the date and time (inclusive) to filter event log records by. (optional)
to = '2021-04-29T16:24:57.123Z' # datetime | To the date and time (inclusive) to filter event log records by. (optional)
limit = 10 # int | Limit the number of records returned. (optional)
order = 'ASC' # str | Ordering of the event's time. SortBy can be introduced later on. (optional) (default to 'ASC')
username = 'johnd@phoenixnap.com' # str | The username that did the actions. (optional)
verb = 'verb_example' # str | The HTTP verb corresponding to the action. (optional)
uri = '/ams/v1/clients/12345' # str | The request uri. (optional)
try:
# List event logs.
api_response = api_instance.events_get(var_from=var_from, to=to, limit=limit, order=order, username=username, verb=verb, uri=uri)
print("The response of EventsApi->events_get:\n")
pprint(api_response)
except ApiException as e:
print("Exception when calling EventsApi->events_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/audit/v1*
Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*EventsApi* | [**events_get**](docs/EventsApi.md#events_get) | **GET** /events | List event logs.
## Documentation For Models
- [Error](docs/Error.md)
- [Event](docs/Event.md)
- [UserInfo](docs/UserInfo.md)
<a id="documentation-for-authorization"></a>
## Documentation For Authorization
Authentication schemes defined for the API:
<a id="OAuth2"></a>
### OAuth2
- **Type**: OAuth
- **Flow**: application
- **Authorization URL**:
- **Scopes**:
- **audit.read**: Grants read only access to audit-log-api.
## Author
support@phoenixnap.com