# accelapy
An Accela specific API for https://developer.accela.com/docs/api_reference/api-index.html
## How to use:
`pip install accelapy`
You may need to get your payload from Accela for your environment.
```python
from accelapy.client import AccelaClient
from accelapy.records_client.types import Response
from accelapy.records_client.models import RecordModel, TableModel
import json
from typing import List
from accelapy.payload import Payload
payload = Payload(payload_str='totally-real-payload')
api_client = AccelaClient(payload=payload)
# Get an Accela record, then get its associated custom tables
record_response: Response = api_client.v4_get_records.sync_detailed(client=api_client.authentication_client,
custom_id='TM-6308')
json_load = json.loads(record_response.content)
record_models: List[RecordModel] = [RecordModel.from_dict(x) for x in json_load['result']]
print(record_models)
real_record_id = record_models[0].id
record_custom_tables_response: Response = api_client.v_4_get_records_record_id_custom_tables.sync_detailed(
client=api_client.authentication_client, record_id=real_record_id)
json_load = json.loads(record_custom_tables_response.content)
custom_tables: List[TableModel] = [TableModel.from_dict(x) for x in json_load['result']]
print(custom_tables)
```
Raw data
{
"_id": null,
"home_page": "https://github.com/michaelachrisco/accelapy",
"name": "accelapy",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.10",
"maintainer_email": null,
"keywords": "accela, rest, api",
"author": "MichaelAChrisco",
"author_email": "michaelachrisco@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/02/0a/162755ad7b0276d41a9ee1c52e94514275984e8ae1fa5103c1f85892a712/accelapy-0.3.3.tar.gz",
"platform": null,
"description": "# accelapy\nAn Accela specific API for https://developer.accela.com/docs/api_reference/api-index.html\n\n## How to use:\n`pip install accelapy`\n\nYou may need to get your payload from Accela for your environment.\n\n```python\nfrom accelapy.client import AccelaClient\nfrom accelapy.records_client.types import Response\nfrom accelapy.records_client.models import RecordModel, TableModel\nimport json\nfrom typing import List\nfrom accelapy.payload import Payload\n\npayload = Payload(payload_str='totally-real-payload')\napi_client = AccelaClient(payload=payload)\n\n# Get an Accela record, then get its associated custom tables\nrecord_response: Response = api_client.v4_get_records.sync_detailed(client=api_client.authentication_client,\n custom_id='TM-6308')\njson_load = json.loads(record_response.content)\nrecord_models: List[RecordModel] = [RecordModel.from_dict(x) for x in json_load['result']]\nprint(record_models)\n\nreal_record_id = record_models[0].id\nrecord_custom_tables_response: Response = api_client.v_4_get_records_record_id_custom_tables.sync_detailed(\n client=api_client.authentication_client, record_id=real_record_id)\njson_load = json.loads(record_custom_tables_response.content)\n\ncustom_tables: List[TableModel] = [TableModel.from_dict(x) for x in json_load['result']]\nprint(custom_tables)\n```\n",
"bugtrack_url": null,
"license": "AGPL-3.0-or-later",
"summary": "Accela REST API",
"version": "0.3.3",
"project_urls": {
"Homepage": "https://github.com/michaelachrisco/accelapy",
"Repository": "https://github.com/michaelachrisco/accelapy"
},
"split_keywords": [
"accela",
" rest",
" api"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "fa06d7b8eb5dc4904a02b472cd1d111e0ac62af685571d77ffc76a56395b6024",
"md5": "4d2cab3d23211504123c032272fb3e9a",
"sha256": "42716393865190ba6a7bec800153e319979b575d26360594e8908eadfb5851cc"
},
"downloads": -1,
"filename": "accelapy-0.3.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "4d2cab3d23211504123c032272fb3e9a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.10",
"size": 695895,
"upload_time": "2025-08-07T18:23:23",
"upload_time_iso_8601": "2025-08-07T18:23:23.077938Z",
"url": "https://files.pythonhosted.org/packages/fa/06/d7b8eb5dc4904a02b472cd1d111e0ac62af685571d77ffc76a56395b6024/accelapy-0.3.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "020a162755ad7b0276d41a9ee1c52e94514275984e8ae1fa5103c1f85892a712",
"md5": "21dc330438c6614c42306d779db0381f",
"sha256": "56ab9b4d90cbd9355780bafe01b9180b257cf1704fbc532e6147d3fb9f664cb0"
},
"downloads": -1,
"filename": "accelapy-0.3.3.tar.gz",
"has_sig": false,
"md5_digest": "21dc330438c6614c42306d779db0381f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.10",
"size": 217185,
"upload_time": "2025-08-07T18:23:24",
"upload_time_iso_8601": "2025-08-07T18:23:24.186338Z",
"url": "https://files.pythonhosted.org/packages/02/0a/162755ad7b0276d41a9ee1c52e94514275984e8ae1fa5103c1f85892a712/accelapy-0.3.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-07 18:23:24",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "michaelachrisco",
"github_project": "accelapy",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "httpx",
"specs": []
},
{
"name": "attrs",
"specs": []
},
{
"name": "requests",
"specs": []
},
{
"name": "python-dateutil",
"specs": []
}
],
"lcname": "accelapy"
}