@@ -4,66 +4,75 @@ Easy way to communicate with bitrix24 portal over REST without OAuth 2.0
4
4
5
5
## Description
6
6
7
- Bitrix24 REST is a simple API wrapper for working with Bitrix24
8
- REST API over webhooks .
7
+ Bitrix24 REST is an API wrapper for working with Bitrix24 REST API over webhooks.
8
+ No OAuth 2.0 required. It's easy to use and super lightweight, with minimal dependencies .
9
9
10
10
## Features
11
11
12
- - Works both with cloud and on-premises versions of bitrix24, much more
13
- - Super easy for setting up. No OAuth implemetation required
14
- - Compatible with latests Bitrix24 REST API
15
-
16
- ## Requirements
17
- - Python 2.6+ or 3.2+
18
- - requests
12
+ - Works with both cloud and on-premises versions of Bitrix24.
13
+ - Super easy to setup. No OAuth 2.0 infrastructure required.
14
+ - Built with data analysis in mind and fully compatible with Jupyter Notebook.
15
+ - Fetch paginated data at once without hassle.
16
+ - Works with large datasets and handles rate limits.
19
17
20
18
## Installation
19
+
21
20
```
22
21
pip install bitrix24-rest
23
22
```
24
23
25
24
## Quickstart
26
25
27
26
``` python
28
- from bitrix24 import *
27
+ from bitrix24 import Bitrix24
29
28
30
29
bx24 = Bitrix24(' https://example.bitrix24.com/rest/1/33olqeits4avuyqu' )
31
30
32
31
print (bx24.callMethod(' crm.product.list' ))
33
32
```
34
33
35
- ## Advanced usage
36
-
37
- You can define filters and additional parameters in any order:
34
+ In async mode:
38
35
39
36
``` python
40
- bx24.callMethod(' crm.deal.list' ,
41
- order = {' STAGE_ID' : ' ASC' },
42
- filter = {' >PROBABILITY' : 50 },
43
- select = [' ID' , ' TITLE' , ' STAGE_ID' , ' PROBABILITY' ])
44
- ```
37
+ import asyncio
38
+ from bitrix24 import bitrix24
45
39
46
- Catch the server error with exception:
40
+ async def main ():
41
+ bx24 = Bitrix24(' https://example.bitrix24.com/rest/1/33olqeits4avuyqu' )
42
+ result = await bx24.callMethod(' crm.product.list' )
43
+ print (result)
47
44
48
- ``` python
49
- try :
50
- bx24.callMethod(' tasks.task.add' , fields = {' TITLE' : ' task for test' , ' RESPONSIBLE_ID' : 1 })
51
- except BitrixError as message:
52
- print (message)
45
+ asyncio.run(main())
53
46
```
54
47
48
+ ## Advanced usage
49
+
50
+ - [ Using filters and additional parameters] ( docs/using-filters-and-additional-parameters.md )
51
+ - [ Working with large datasets] ( docs/working-with-large-datasets.md )
52
+ - [ Disabling certificate verification] ( docs/disabling-certificate-verification.md )
53
+
55
54
## Notes
56
- List methods return all available items at once. For large collections
57
- of data use limits.
58
55
59
- ## Tests
56
+ List methods return all available items at once. For large collections of data use limits.
60
57
58
+ ## Development
59
+
60
+ New contributers and pull requests are welcome. If you have any questions or suggestions, feel free to open an issue.
61
+
62
+ Code comes with makefile for easy code base management. You can check ` make help ` for more details.
63
+
64
+ ``` sh
65
+ make init install # to create a local virtual environment and install dependencies
66
+
67
+ make test # to run tests
68
+
69
+ make lint # to run linter
61
70
```
62
- python -m unittest discover
63
- ```
64
71
65
- ## Author
72
+ I suggest to use ` make all ` before committing your changes as it will run all the necessary checks.
73
+
74
+ ## Support this project
66
75
67
- Akop Kesheshyan - < akop.kesheshyan@icloud.com >
76
+ You can support this project by starring ⭐, sharing 📤, and contributing.
68
77
69
- New contributers and pull requests are welcome .
78
+ You can also support the author by buying him a coffee ☕. Click sponsor button on the top of the page .
0 commit comments