alertlogic-sdk-definitions


Namealertlogic-sdk-definitions JSON
Version 0.1.156 PyPI version JSON
download
home_pagehttps://github.com/alertlogic/alertlogic-sdk-definitions
SummaryThe Alert Logic API definitions.
upload_time2024-11-14 12:07:05
maintainerNone
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": null,
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": null,
    "keywords": "alcli, almdr, alsdkdefs, alertlogic, alertlogic-cli",
    "author": "Alert Logic Inc.",
    "author_email": "devsupport@alertlogic.com",
    "download_url": "https://files.pythonhosted.org/packages/ab/88/25e0a6ebcb2209b0666216239105b71e0a106a104bdd9b3bb2f6b62f5c21/alertlogic_sdk_definitions-0.1.156.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.156",
    "project_urls": {
        "Homepage": "https://github.com/alertlogic/alertlogic-sdk-definitions"
    },
    "split_keywords": [
        "alcli",
        " almdr",
        " alsdkdefs",
        " alertlogic",
        " alertlogic-cli"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a57aac985535017d1c406c1cd33b5d4f1423fa17272aab0fb66dab2aab501e3c",
                "md5": "eb0d060b64f3492b1d25129ee5fa910a",
                "sha256": "9cf7fef30f8412f1f2d07da3d14b4ec35c3e6880acb67f368ff5ee129936c74b"
            },
            "downloads": -1,
            "filename": "alertlogic_sdk_definitions-0.1.156-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "eb0d060b64f3492b1d25129ee5fa910a",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 1237257,
            "upload_time": "2024-11-14T12:07:02",
            "upload_time_iso_8601": "2024-11-14T12:07:02.851692Z",
            "url": "https://files.pythonhosted.org/packages/a5/7a/ac985535017d1c406c1cd33b5d4f1423fa17272aab0fb66dab2aab501e3c/alertlogic_sdk_definitions-0.1.156-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ab8825e0a6ebcb2209b0666216239105b71e0a106a104bdd9b3bb2f6b62f5c21",
                "md5": "cb207a5b6e90631890669688dff8672a",
                "sha256": "fe7668bb97fe161b044a852cb7b9e782c81d8d2dd002fc5567f3b52438af0f4d"
            },
            "downloads": -1,
            "filename": "alertlogic_sdk_definitions-0.1.156.tar.gz",
            "has_sig": false,
            "md5_digest": "cb207a5b6e90631890669688dff8672a",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 1251451,
            "upload_time": "2024-11-14T12:07:05",
            "upload_time_iso_8601": "2024-11-14T12:07:05.137024Z",
            "url": "https://files.pythonhosted.org/packages/ab/88/25e0a6ebcb2209b0666216239105b71e0a106a104bdd9b3bb2f6b62f5c21/alertlogic_sdk_definitions-0.1.156.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-14 12:07:05",
    "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.40314s