Python client for SMSAPI contacts rest API.
Project description
smsapi-contacts-python
=============
Client for SMSAPI contacts rest api.
## COMPATIBILITY:
Compatible with Python 2.6+, 2.7+, 3.+.
## REQUIREMENTS:
requests
## INSTALLATION:
If You have pip installed:
sudo pip install smsapi-contacts
else You can install manually:
git clone https://github.com/smsapi/smsapi-contacts-python-client.git
cd smsapi-contacts-python
python setup.py install
## USAGE:
```python
from smsapicontacts.api import ContactsApi
api = ContactsApi(username=api_username, password=api_password)
```
#### Contact management
```python
contact = api.create_contact(
first_name='Jon',
last_name='Doe',
idx='id for Your use',
phone_number=123123123,
email='jondoe@somedomain.com'
birthday_date='1970-01-01',
gender='{male|female|undefined}',
city='some_city',
email='jondoe@somedomain.com',
source='some_contact_source',
description='Jon Doe')
contact = api.update_contact(contact_id=1, description='new_description')
contacts = api.list_contacts()
contact = api.get_contact(contact_id=1)
groups = api.list_contact_groups(contact_id=1)
contact = api.bind_contact_to_group(contact_id=1, group_id=1)
api.delete_contact(contact_id=1)
```
#### Group management
```python
group = api.create_group(name='group_name', description='group_description')
groups = api.list_groups()
group = api.get_group(group_id=1)
group = api.update_group(group_id=1, name='new_name')
api.delete_group(group_id=1)
permissions = api.list_group_permissions(group_id=1)
permission = api.create_group_permission(
group_id=1
read=True,
write=False,
send=True)
permissions = api.list_user_group_permissions(group_id=1, username='some_username')
api.delete_user_group_permission(group_id=1, username='some_username')
permission = api.update_user_group_permission(group_id=1, username='some_username', read=False)
api.unpin_contact_from_group(group_id=1, contact_id=1)
contact = api.contact_is_in_group(group_id=1, contact_id=1)
```
#### Custom field management
```python
fields = api.list_custom_fields()
field = api.create_custom_field(name='some_field_name', type='{TEXT|DATE|EMAIL|NUMBER|PHONENUMBER|}')
field = api.update_custom_field(field_id='1', name='new_field_name')
delete_custom_field(field_id=1)
```
#### Error handling
```python
from smsapi.exception import ContactsApiError
try:
contact = api.create_contact(phone_number=123123)
except ContactsApiError as e:
print(e.message, e.code, e.type)
```
## LICENSE
[Apache 2.0 License](https://github.com/smsapi/smsapi-contacts-python/blob/master/LICENSE)
=============
Client for SMSAPI contacts rest api.
## COMPATIBILITY:
Compatible with Python 2.6+, 2.7+, 3.+.
## REQUIREMENTS:
requests
## INSTALLATION:
If You have pip installed:
sudo pip install smsapi-contacts
else You can install manually:
git clone https://github.com/smsapi/smsapi-contacts-python-client.git
cd smsapi-contacts-python
python setup.py install
## USAGE:
```python
from smsapicontacts.api import ContactsApi
api = ContactsApi(username=api_username, password=api_password)
```
#### Contact management
```python
contact = api.create_contact(
first_name='Jon',
last_name='Doe',
idx='id for Your use',
phone_number=123123123,
email='jondoe@somedomain.com'
birthday_date='1970-01-01',
gender='{male|female|undefined}',
city='some_city',
email='jondoe@somedomain.com',
source='some_contact_source',
description='Jon Doe')
contact = api.update_contact(contact_id=1, description='new_description')
contacts = api.list_contacts()
contact = api.get_contact(contact_id=1)
groups = api.list_contact_groups(contact_id=1)
contact = api.bind_contact_to_group(contact_id=1, group_id=1)
api.delete_contact(contact_id=1)
```
#### Group management
```python
group = api.create_group(name='group_name', description='group_description')
groups = api.list_groups()
group = api.get_group(group_id=1)
group = api.update_group(group_id=1, name='new_name')
api.delete_group(group_id=1)
permissions = api.list_group_permissions(group_id=1)
permission = api.create_group_permission(
group_id=1
read=True,
write=False,
send=True)
permissions = api.list_user_group_permissions(group_id=1, username='some_username')
api.delete_user_group_permission(group_id=1, username='some_username')
permission = api.update_user_group_permission(group_id=1, username='some_username', read=False)
api.unpin_contact_from_group(group_id=1, contact_id=1)
contact = api.contact_is_in_group(group_id=1, contact_id=1)
```
#### Custom field management
```python
fields = api.list_custom_fields()
field = api.create_custom_field(name='some_field_name', type='{TEXT|DATE|EMAIL|NUMBER|PHONENUMBER|}')
field = api.update_custom_field(field_id='1', name='new_field_name')
delete_custom_field(field_id=1)
```
#### Error handling
```python
from smsapi.exception import ContactsApiError
try:
contact = api.create_contact(phone_number=123123)
except ContactsApiError as e:
print(e.message, e.code, e.type)
```
## LICENSE
[Apache 2.0 License](https://github.com/smsapi/smsapi-contacts-python/blob/master/LICENSE)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
smsapi-contacts-1.0.3.tar.gz
(7.9 kB
view details)
Built Distribution
File details
Details for the file smsapi-contacts-1.0.3.tar.gz
.
File metadata
- Download URL: smsapi-contacts-1.0.3.tar.gz
- Upload date:
- Size: 7.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bca090c3891689a436208f8fe2c18825399164e63905e78e1624d37362f86dbd |
|
MD5 | d2bd1fcb348ede2bb78dc375ce2381f9 |
|
BLAKE2b-256 | 9ed492c301f8bbe97c49cdd03d2084a4a43b7af7189c647a0cca10315183410b |
File details
Details for the file smsapi_contacts-1.0.3-py2.py3-none-any.whl
.
File metadata
- Download URL: smsapi_contacts-1.0.3-py2.py3-none-any.whl
- Upload date:
- Size: 13.0 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 689e82e2a0d1cf4296a40875ee7ac1474b459de09589823df4a6960692ec5b8d |
|
MD5 | c48eed6b2c20fda70775d4a317f40860 |
|
BLAKE2b-256 | f0fb2ff4383dc86de91c963878bad8ce7d27890b65fbc5f573571f0e2bd322c1 |