Skip to main content

The Alert Logic API definitions.

Project description

Alert Logic APIs definitions

Build Status PyPI version

Repository contains static definitions of Alert Logic APIs, used for documentation generation, SDK and CLI.

Usage

Install

pip install alertlogic-sdk-definitions

For the one who doesn't require python code, GitHub releases are produced containing an archive with OpenAPI definitions only, see here

Test

python -m unittest

Use

List available service definitions:

>>> import alsdkdefs
>>> alsdkdefs.list_services()
OrderedDict([('aecontent', ServiceDefinition(aecontent)), ('aefr', ServiceDefinition(aefr)), ('aepublish', ServiceDefinition(aepublish)), ('aerta', ServiceDefinition(aerta)), ('aetag', ServiceDefinition(aetag)), ('aetuner', ServiceDefinition(aetuner)), ('aims', ServiceDefinition(aims)), ('assets_query', ServiceDefinition(assets_query)), ('assets_write', ServiceDefinition(assets_write)), ('connectors', ServiceDefinition(connectors)), ('credentials', ServiceDefinition(credentials)), ('deployments', ServiceDefinition(deployments)), ('herald', ServiceDefinition(herald)), ('ingest', ServiceDefinition(ingest)), ('iris', ServiceDefinition(iris)), ('kalm', ServiceDefinition(kalm)), ('notify', ServiceDefinition(notify)), ('otis', ServiceDefinition(otis)), ('policies', ServiceDefinition(policies)), ('remediations', ServiceDefinition(remediations)), ('responder', ServiceDefinition(responder)), ('search', ServiceDefinition(search)), ('subscriptions', ServiceDefinition(subscriptions)), ('themis', ServiceDefinition(themis))])

Get path to a service definitions paths:

>>> import alsdkdefs
>>> alsdkdefs.get_service_defs("aerta")
['/usr/local/lib/python3.8/site-packages/alsdkdefs/apis/aerta/aerta.v1.yaml']

Get normalised service spec of a service(all refs resolved, path parameters moved to the methods, allOfs are merged if possible):

>>> import alsdkdefs
>>> alsdkdefs.load_service_spec("aerta")

Validate service spec:

>>> import alsdkdefs
>>> service_spec = alsdkdefs.load_service_spec("aerta")
>>> alsdkdefs.validate(service_spec)

Quick validation of a definition

While YAML definition is developed apart from the current package and current repo, it is required to validate it prior to push, please add this to your Makefile in order to achieve quick validation:

curl -s https://raw.githubusercontent.com/alertlogic/alertlogic-sdk-definitions/master/scripts/validate_my_definition.sh | bash -s <path/to/definitions/directory>

If no directory is specified, by default doc/openapi/ directory will be used, if such behaviour is desired, use following line instead:

curl -s https://raw.githubusercontent.com/alertlogic/alertlogic-sdk-definitions/master/scripts/validate_my_definition.sh | bash

It is recommended to invoke it via curl, since validation of the definitions might be extended with time. Script requires python3 to be available in the system.

Validation checks:

  • YAML of a definition is valid
  • Definition passes OpenAPI 3 schema validation

Development

Please submit a PR. Please note that API definitions are updated automatically and any changes to it will be overwritten, see: automatic update process

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

alertlogic-sdk-definitions-0.1.34.tar.gz (257.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

alertlogic_sdk_definitions-0.1.34-py3-none-any.whl (230.4 kB view details)

Uploaded Python 3

File details

Details for the file alertlogic-sdk-definitions-0.1.34.tar.gz.

File metadata

  • Download URL: alertlogic-sdk-definitions-0.1.34.tar.gz
  • Upload date:
  • Size: 257.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.5

File hashes

Hashes for alertlogic-sdk-definitions-0.1.34.tar.gz
Algorithm Hash digest
SHA256 d2742c0d26cd606cc4d1aca33e3ed634a7486d0161d2e6001ae71da7bf82648a
MD5 c4bd0928394b63609ae6ab870c20edb5
BLAKE2b-256 b21f2255cb08ea9fcf86f87f40406574a67c2764b96d63ad7809051c771855f5

See more details on using hashes here.

File details

Details for the file alertlogic_sdk_definitions-0.1.34-py3-none-any.whl.

File metadata

  • Download URL: alertlogic_sdk_definitions-0.1.34-py3-none-any.whl
  • Upload date:
  • Size: 230.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.5

File hashes

Hashes for alertlogic_sdk_definitions-0.1.34-py3-none-any.whl
Algorithm Hash digest
SHA256 96e6c4137fa355da17e1a65012b4fb72b8db0e6acc9293296e7ab5c90b976211
MD5 4f2bbc3fd9cab6d577d195f4830f5dfe
BLAKE2b-256 d7859ac5a24a5043a5e392ba47c2593e6e80179bb9245ef32cf7691d139e4be4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page