apapi


Nameapapi JSON
Version 0.5.0 PyPI version JSON
download
home_pagehttps://github.com/DLZaan/apapi
SummaryUnofficial Anaplan API Python client library
upload_time2023-06-07 07:33:52
maintainerMilosz Kierepka
docs_urlNone
authorMilosz Kierepka
requires_python~=3.9
licenseApache 2.0
keywords anaplan anaplanapi anaplanconnector client
VCS
bugtrack_url
requirements requests
Travis-CI No Travis.
coveralls test coverage No coveralls.
            
# APAPI

**APAPI** is an unofficial library that allows you to connect to Anaplan APIs using
Python. Currently, you can authenticate using either Basic Authentication
(email & password), or OAuth2 (client_id & refresh_token, both non-rotatable and 
rotatable) - Cert based authentication is on the roadmap.
Use Bulk, Transactional, ALM and Audit endpoints, with more coming soon!

As an abstract example, here we export some CSV and import it back to Anaplan:

```python
>> > import apapi
>> > with apapi.BasicAuth(f"{email}:{password}") as authentication:
    >> > my_connection = apapi.BulkConnection(authentication)
>> > my_connection.run_export(model_id, export_id)
>> > data = my_connection.get_file(model_id, export_id)
>> > print(data.decode())
Versions, Data, Text
Actual, 1, test
Budget, 2.5, ąćęłńśżź
Forecast, -3,😂
>> > my_connection.put_file(model_id, file_id, data)
>> > my_connection.run_import(model_id, import_id)
```
Full documentation can be found [here](https://dlzaan.github.io/apapi/apapi.html).
Check [examples](https://github.com/DLZaan/apapi/tree/master/examples)
or [tests](https://github.com/DLZaan/apapi/tree/master/tests)
for more examples and hints about usage.

## Installing Anaplan Python API and Supported Versions

APAPI is available on [PyPI](https://pypi.org/project/apapi/):
```console
$ python -m pip install apapi
```
APAPI supports Python 3.9+.

## More Info
- [Official Anaplan APIs Postman Collection](https://www.postman.com/apiplan/workspace/official-anaplan-collection/overview)
- [Official documentation of Anaplan APIs](https://help.anaplan.com/da432e9b-24dd-4884-a70e-a3e409201e5c-Anaplan-API)
- [Official documentation of Anaplan Connect V4 (Java)](https://anaplanenablement.s3.amazonaws.com/Community/Anapedia/Anaplan-Connector-Informatica-V.4.2.1.pdf)
- [Official Anaplan Connect repository](https://github.com/anaplaninc/anaplan-java-client)

## How to Contribute

Contributions are welcome, even if you can't code it - in such case, please submit 
an issue if you need any additional feature (preferably in the form of User Story, 
like *"As {who} I need {what} because {why}"*).
If you encounter any bugs, please report the problem with a description and error log.

![PyPI - Python Version](https://img.shields.io/pypi/pyversions/apapi)
[![PyPI - License](https://img.shields.io/pypi/l/apapi)](https://github.com/DLZaan/apapi/blob/master/LICENSE)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Imports: isort](https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat&labelColor=ef8336)](https://pycqa.github.io/isort/)


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/DLZaan/apapi",
    "name": "apapi",
    "maintainer": "Milosz Kierepka",
    "docs_url": null,
    "requires_python": "~=3.9",
    "maintainer_email": "milosz.kierepka+work@gmail.com",
    "keywords": "anaplan anaplanapi anaplanconnector client",
    "author": "Milosz Kierepka",
    "author_email": "milosz.kierepka+work@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/2f/ff/aced63e234a48e4bc0a7dff4eddad9d9f094508c75d296f284858f6fd0d5/apapi-0.5.0.tar.gz",
    "platform": "any",
    "description": "\r\n# APAPI\r\n\r\n**APAPI** is an unofficial library that allows you to connect to Anaplan APIs using\r\nPython. Currently, you can authenticate using either Basic Authentication\r\n(email & password), or OAuth2 (client_id & refresh_token, both non-rotatable and \r\nrotatable) - Cert based authentication is on the roadmap.\r\nUse Bulk, Transactional, ALM and Audit endpoints, with more coming soon!\r\n\r\nAs an abstract example, here we export some CSV and import it back to Anaplan:\r\n\r\n```python\r\n>> > import apapi\r\n>> > with apapi.BasicAuth(f\"{email}:{password}\") as authentication:\r\n    >> > my_connection = apapi.BulkConnection(authentication)\r\n>> > my_connection.run_export(model_id, export_id)\r\n>> > data = my_connection.get_file(model_id, export_id)\r\n>> > print(data.decode())\r\nVersions, Data, Text\r\nActual, 1, test\r\nBudget, 2.5, \u0105\u0107\u0119\u0142\u0144\u015b\u017c\u017a\r\nForecast, -3,\ud83d\ude02\r\n>> > my_connection.put_file(model_id, file_id, data)\r\n>> > my_connection.run_import(model_id, import_id)\r\n```\r\nFull documentation can be found [here](https://dlzaan.github.io/apapi/apapi.html).\r\nCheck [examples](https://github.com/DLZaan/apapi/tree/master/examples)\r\nor [tests](https://github.com/DLZaan/apapi/tree/master/tests)\r\nfor more examples and hints about usage.\r\n\r\n## Installing Anaplan Python API and Supported Versions\r\n\r\nAPAPI is available on [PyPI](https://pypi.org/project/apapi/):\r\n```console\r\n$ python -m pip install apapi\r\n```\r\nAPAPI supports Python 3.9+.\r\n\r\n## More Info\r\n- [Official Anaplan APIs Postman Collection](https://www.postman.com/apiplan/workspace/official-anaplan-collection/overview)\r\n- [Official documentation of Anaplan APIs](https://help.anaplan.com/da432e9b-24dd-4884-a70e-a3e409201e5c-Anaplan-API)\r\n- [Official documentation of Anaplan Connect V4 (Java)](https://anaplanenablement.s3.amazonaws.com/Community/Anapedia/Anaplan-Connector-Informatica-V.4.2.1.pdf)\r\n- [Official Anaplan Connect repository](https://github.com/anaplaninc/anaplan-java-client)\r\n\r\n## How to Contribute\r\n\r\nContributions are welcome, even if you can't code it - in such case, please submit \r\nan issue if you need any additional feature (preferably in the form of User Story, \r\nlike *\"As {who} I need {what} because {why}\"*).\r\nIf you encounter any bugs, please report the problem with a description and error log.\r\n\r\n![PyPI - Python Version](https://img.shields.io/pypi/pyversions/apapi)\r\n[![PyPI - License](https://img.shields.io/pypi/l/apapi)](https://github.com/DLZaan/apapi/blob/master/LICENSE)\r\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\r\n[![Imports: isort](https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat&labelColor=ef8336)](https://pycqa.github.io/isort/)\r\n\r\n",
    "bugtrack_url": null,
    "license": "Apache 2.0",
    "summary": "Unofficial Anaplan API Python client library",
    "version": "0.5.0",
    "project_urls": {
        "Changelog": "https://pip.pypa.io/en/stable/news/",
        "Documentation": "https://dlzaan.github.io/apapi/apapi.html",
        "Homepage": "https://github.com/DLZaan/apapi",
        "Source": "https://github.com/DLZaan/apapi"
    },
    "split_keywords": [
        "anaplan",
        "anaplanapi",
        "anaplanconnector",
        "client"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2ab6699916a00ee5b11e4d6012018392425fc98577b099155bc2411eea91d95b",
                "md5": "48669cbfbb88b97e9653f649216c5d16",
                "sha256": "fab2e8230630a387ac9759b6c8fa3ea5ee64ac77eee665a703ed3257295857e9"
            },
            "downloads": -1,
            "filename": "apapi-0.5.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "48669cbfbb88b97e9653f649216c5d16",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "~=3.9",
            "size": 23184,
            "upload_time": "2023-06-07T07:33:51",
            "upload_time_iso_8601": "2023-06-07T07:33:51.067132Z",
            "url": "https://files.pythonhosted.org/packages/2a/b6/699916a00ee5b11e4d6012018392425fc98577b099155bc2411eea91d95b/apapi-0.5.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2fffaced63e234a48e4bc0a7dff4eddad9d9f094508c75d296f284858f6fd0d5",
                "md5": "b9326f3e807365520dac939959d6b89b",
                "sha256": "936de7c4449eaed63ac8edd20032314bfee2b572b3fc0a15fe14a6e0f9e955dd"
            },
            "downloads": -1,
            "filename": "apapi-0.5.0.tar.gz",
            "has_sig": false,
            "md5_digest": "b9326f3e807365520dac939959d6b89b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "~=3.9",
            "size": 21498,
            "upload_time": "2023-06-07T07:33:52",
            "upload_time_iso_8601": "2023-06-07T07:33:52.940483Z",
            "url": "https://files.pythonhosted.org/packages/2f/ff/aced63e234a48e4bc0a7dff4eddad9d9f094508c75d296f284858f6fd0d5/apapi-0.5.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-06-07 07:33:52",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "DLZaan",
    "github_project": "apapi",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "requests",
            "specs": [
                [
                    "~=",
                    "2.28"
                ]
            ]
        }
    ],
    "lcname": "apapi"
}
        
Elapsed time: 0.07262s