alertlogic-sdk-definitions


Namealertlogic-sdk-definitions JSON
Version 0.1.141 PyPI version JSON
download
home_pagehttps://github.com/alertlogic/alertlogic-sdk-definitions
SummaryThe Alert Logic API definitions.
upload_time2024-03-01 12:09:21
maintainer
docs_urlNone
authorAlert Logic Inc.
requires_python>=3.6
licenseMIT license
keywords alcli almdr alsdkdefs alertlogic alertlogic-cli
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Alert Logic APIs definitions

[![Build Status](https://travis-ci.com/alertlogic/alertlogic-sdk-definitions.svg?branch=master)](https://travis-ci.com/alertlogic/alertlogic-sdk-definitions)
[![PyPI version](https://badge.fury.io/py/alertlogic-sdk-definitions.svg)](https://badge.fury.io/py/alertlogic-sdk-definitions)

Repository contains static definitions of Alert Logic APIs, used for documentation generation, 
[SDK](https://github.com/alertlogic/alertlogic-sdk-python) and [CLI](https://github.com/alertlogic/alcli).

### 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](https://github.com/alertlogic/alertlogic-sdk-definitions/releases)

#### 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](doc/automatic_releases.md)

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/alertlogic/alertlogic-sdk-definitions",
    "name": "alertlogic-sdk-definitions",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "alcli,almdr,alsdkdefs,alertlogic,alertlogic-cli",
    "author": "Alert Logic Inc.",
    "author_email": "devsupport@alertlogic.com",
    "download_url": "https://files.pythonhosted.org/packages/f2/bb/e56271f2673d3fa3af6a75e31a1d336f357b33ec3a564bee695ac785a641/alertlogic-sdk-definitions-0.1.141.tar.gz",
    "platform": "any",
    "description": "# Alert Logic APIs definitions\n\n[![Build Status](https://travis-ci.com/alertlogic/alertlogic-sdk-definitions.svg?branch=master)](https://travis-ci.com/alertlogic/alertlogic-sdk-definitions)\n[![PyPI version](https://badge.fury.io/py/alertlogic-sdk-definitions.svg)](https://badge.fury.io/py/alertlogic-sdk-definitions)\n\nRepository contains static definitions of Alert Logic APIs, used for documentation generation, \n[SDK](https://github.com/alertlogic/alertlogic-sdk-python) and [CLI](https://github.com/alertlogic/alcli).\n\n### Usage\n\n#### Install \n`pip install alertlogic-sdk-definitions`\n\nFor the one who doesn't require python code, GitHub releases are produced \ncontaining an archive with OpenAPI definitions only, see\n[here](https://github.com/alertlogic/alertlogic-sdk-definitions/releases)\n\n#### Test\n`python -m unittest`\n\n#### Use\n\nList available service definitions:\n```\n>>> import alsdkdefs\n>>> alsdkdefs.list_services()\nOrderedDict([('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))])\n```\n\nGet path to a service definitions paths:\n```\n>>> import alsdkdefs\n>>> alsdkdefs.get_service_defs(\"aerta\")\n['/usr/local/lib/python3.8/site-packages/alsdkdefs/apis/aerta/aerta.v1.yaml']\n```\n\nGet normalised service spec of a service(all refs resolved, \n                                 path parameters moved to the methods, \n                                 allOfs are merged if possible):\n```\n>>> import alsdkdefs\n>>> alsdkdefs.load_service_spec(\"aerta\")\n```\n\nValidate service spec: \n```\n>>> import alsdkdefs\n>>> service_spec = alsdkdefs.load_service_spec(\"aerta\")\n>>> alsdkdefs.validate(service_spec)\n```\n\n#### Quick validation of a definition\n\nWhile YAML definition is developed apart from the current package and current repo,\nit is required to validate it prior to push, please add this to your `Makefile` \nin order to achieve quick validation:\n\n`curl -s https://raw.githubusercontent.com/alertlogic/alertlogic-sdk-definitions/master/scripts/validate_my_definition.sh | bash -s <path/to/definitions/directory>`\n\nIf no directory is specified, by default `doc/openapi/` directory will be used, if such behaviour is desired, use following line instead:\n\n`curl -s https://raw.githubusercontent.com/alertlogic/alertlogic-sdk-definitions/master/scripts/validate_my_definition.sh | bash `\n\nIt is recommended to invoke it via curl, since validation of the definitions might be extended with time.\nScript requires `python3` to be available in the system.\n\nValidation checks:\n* YAML of a definition is valid\n* Definition passes OpenAPI 3 schema validation\n\n### Development\n\nPlease submit a PR. Please note that API definitions are updated automatically and any changes to it will be overwritten, see:\n[automatic update process](doc/automatic_releases.md)\n",
    "bugtrack_url": null,
    "license": "MIT license",
    "summary": "The Alert Logic API definitions.",
    "version": "0.1.141",
    "project_urls": {
        "Homepage": "https://github.com/alertlogic/alertlogic-sdk-definitions"
    },
    "split_keywords": [
        "alcli",
        "almdr",
        "alsdkdefs",
        "alertlogic",
        "alertlogic-cli"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0e5d2c89cf53e7e50e7fb18ec2b29d0b67c9fb7fbc2a9d23850546edee94e907",
                "md5": "dcd24c24568821753bb8c515c0f43f56",
                "sha256": "74871bce7aae662f1af1f43b0263e720e6138a81784d9a0eca0fd41b09390d59"
            },
            "downloads": -1,
            "filename": "alertlogic_sdk_definitions-0.1.141-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "dcd24c24568821753bb8c515c0f43f56",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 1235659,
            "upload_time": "2024-03-01T12:09:17",
            "upload_time_iso_8601": "2024-03-01T12:09:17.157872Z",
            "url": "https://files.pythonhosted.org/packages/0e/5d/2c89cf53e7e50e7fb18ec2b29d0b67c9fb7fbc2a9d23850546edee94e907/alertlogic_sdk_definitions-0.1.141-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f2bbe56271f2673d3fa3af6a75e31a1d336f357b33ec3a564bee695ac785a641",
                "md5": "760b75298ca007596a654ea649880ad7",
                "sha256": "b8484aa267de8265232c3dd340ecca3b7c9a5aecdb7cf163a8a82af259b706ca"
            },
            "downloads": -1,
            "filename": "alertlogic-sdk-definitions-0.1.141.tar.gz",
            "has_sig": false,
            "md5_digest": "760b75298ca007596a654ea649880ad7",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 1249502,
            "upload_time": "2024-03-01T12:09:21",
            "upload_time_iso_8601": "2024-03-01T12:09:21.731810Z",
            "url": "https://files.pythonhosted.org/packages/f2/bb/e56271f2673d3fa3af6a75e31a1d336f357b33ec3a564bee695ac785a641/alertlogic-sdk-definitions-0.1.141.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-03-01 12:09:21",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "alertlogic",
    "github_project": "alertlogic-sdk-definitions",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "tox": true,
    "lcname": "alertlogic-sdk-definitions"
}
        
Elapsed time: 0.21853s