HelpScout api wrapper
Project description
Help Scout API Wrapper
This package provide wrapper for Help Scout API 2.0. It gives access to all mailbox endpoints.
Instalation
You can install it from pypi: pip install helpscout-wrapper
Authentication
To use API you need to create app and get app_id and app_secret.
Instructions here
Usage
All endpoint commands and coresponding parameters you can find in documentation
Conversations
| API Endpoint | Wrapper command |
|---|---|
| List conversation | client.conversation.list(kwargs) |
| Get conversation | client.conversation.get(conv_id, kwargs) |
| Create conversation | client.conversation.create(kwargs) |
| Update conversation | client.conversation.update(conv_id, op, path, value) |
| Delete conversation | client.conversation.delete(conv_id) |
| Get attachemnt data | client.conversation.attachment.get(conv_id, attach_id) |
| Upload attachment | client.conversation.attachment.upload(conv_id, thread_id, file_name, mime_type, data) |
| Delete attachment | client.conversation.attachment.delete(conv_id, attach_id) |
| Update custom fields | client.conversation.custom_field.update(conv_id, fields) |
| Update tags | client.conversation.tag.update(conv_id, tags) |
| List threads | client.conversation.thread.list(conv_id) |
| Update thread | client.conversation.thread.update(conv_id, thread_id, op, path, value) |
| Create reply thread | client.conversation.thread.create_reply_thread(conv_id, kwargs) |
| Create phone thread | client.conversation.thread.create_phone_thread(conv_id, kwargs) |
| Create note | client.conversation.thread.create_note(conv_id, kwargs) |
| Create customer thread | client.conversation.thread.create_customer_thread(conv_id, kwargs) |
| Create chat thread | client.conversation.thread.create_chat_thread(conv_id, kwargs) |
Customers
| API Endpoint | Wrapper command |
|---|---|
| List customers | client.customer.list(kwargs) |
| Get customer | client.customer.get(cust_id, kwargs) |
| Create customer | client.customer.create(first_name, kwargs) |
| Update customers | client.customer.update(cust_id, first_name, kwargs) |
| Get address | client.customer.address.get(cust_id) |
| Create address | client.customer.address.create(cust_id, city, state, postal_code, country, lines) |
| Update address | client.customer.address.update(cust_id, city, state, postal_code, country, lines) |
| Delete address | client.customer.address.delete(cust_id) |
| List chat handler | client.customer.chat_handler.list(cust_id) |
| Create chat handler | client.customer.chat_handler.create(cust_id, type_, value) |
| Update chat handler | client.customer.chat_handler.update(cust_id, chat_id, type_, value) |
| Delete chat handler | client.customer.chat_handler.delete(cust_id, chat_id) |
| List email | client.customer.email.list(cust_id) |
| Create email | client.customer.email.create(cust_id, type_, value) |
| Update email | client.customer.email.update(cust_id, email_id, type_, value) |
| Delete email | client.customer.email.delete(cust_id, email_id) |
| List phone | client.customer.phone.list(cust_id) |
| Create phone | client.customer.phone.create(cust_id, type_, value) |
| Update phone | client.customer.phone.update(cust_id, phone_id, type_, value) |
| Delete phone | client.customer.phone.delete(cust_id, phone_id) |
| List social profile | client.customer.social_profile.list(cust_id) |
| Create social profile | client.customer.social_profile.create(cust_id, type_, value) |
| Update social profile | client.customer.social_profile.update(cust_id, profile_id, type_, value) |
| Delete social profile | client.customer.social_profile.delete(cust_id, profile_id) |
| List website | client.customer.website.list(cust_id) |
| Create website | client.customer.website.create(cust_id, type_, value) |
| Update website | client.customer.website.update(cust_id, website_id, type_, value) |
| Delete website | client.customer.website.delete(cust_id, website_id) |
Mailboxes
| API Endpoint | Wrapper command |
|---|---|
| List mailboxes | client.mailbox.list() |
| Get mailbox | client.mailbox.get(mailbox_id) |
| List mailbox custom fields | client.mailbox.mailbox_fields(mailbox_id) |
| List mailbox folders | client.mailbox.mailbox_folders(mailbox_id) |
Reports
| API Endpoint | Wrapper command |
|---|---|
| Chat report | client.report.chat_report(start, end, kwargs) |
| Email report | client.report.email_report(start, end, kwargs) |
| Phone report | client.report.phone_report(start, end, kwargs) |
| Company overall report | client.report.company.overall_report(start, end, kwargs) |
| Company customers helped | client.report.company.customers_helped(start, end, kwargs) |
| Company drilldown | client.report.company.drilldown(start, end, range_, kwargs) |
| Conversation overall report | client.report.conversation.overall_report(start, end, kwargs) |
| Conversation volumes by channel | client.report.conversation.volumes_by_channel(start, end, kwargs) |
| Conversation busiest time of day | client.report.conversation.busiest_time_of_day(start, end, kwargs) |
| Conversation drilldown | client.report.conversation.drilldown(start, end, range_, kwargs) |
| Conversation drilldown by field | client.report.conversation.drilldown_by_field(start, end, field, fieldid, kwargs) |
| Conversation new drilldown | client.report.conversation.new(start, end, kwargs) |
| Conversation received messages statistics | client.report.conversation.received_messages(start, end, kwargs) |
| Doc overall report | client.report.doc.overall_report(start, end, kwargs) |
| Happiness overall report | client.report.happiness.overall_report(start, end, kwargs) |
| Happiness ratings report | client.report.happiness.ratings(start, end, kwargs) |
| Productivity overall report | client.report.productivity.overall_report(start, end, kwargs) |
| Productivity first response time | client.report.productivity.first_response_time(start, end, kwargs) |
| Productivity replies sent | client.report.productivity.replies_sent(start, end, kwargs) |
| Productivity resolution time | client.report.productivity.resolution_time(start, end, kwargs) |
| Productivity resolved | client.report.productivity.resolved(start, end, kwargs) |
| Productivity response time | client.report.productivity.response_time(start, end, kwargs) |
| User overall report | client.report.user.overall_report(user, start, end, kwargs) |
| User conversation history | client.report.user.conversation_history(user, start, end, kwargs) |
| User customers helped | client.report.user.customers_helped(user, start, end, kwargs) |
| User drilldown | client.report.user.drilldown(user, start, end, kwargs) |
| User happiness | client.report.user.happiness(user, start, end, kwargs) |
| User happiness drilldown | client.report.user.happiness_drilldown(user, start, end, kwargs) |
| User replies | client.report.user.replies(user, start, end, kwargs) |
| User resolution | client.report.user.resolution(user, start, end, kwargs) |
Tags
| API Endpoint | Wrapper command |
|---|---|
| List tags | client.tag.list(kwargs) |
Teams
| API Endpoint | Wrapper command |
|---|---|
| List teams | client.team.list(kwargs) |
| List team members | client.team.members(team_id, kwargs) |
Tags
| API Endpoint | Wrapper command |
|---|---|
| List tags | client.tag.list(kwargs) |
Tags
| API Endpoint | Wrapper command |
|---|---|
| List users | client.user.list(kwargs) |
| Get user | client.user.user(user_id) |
| Get resource owner | client.user.resource_owner() |
Webhook
| API Endpoint | Wrapper command |
|---|---|
| List webhooks | client.webhook.list() |
| Get webhook | client.webhook.get(webhook_id) |
| Create webhook | client.webhook.create(url, events, secret, notification) |
| Update webhook | client.webhook.update(webhook_id, url, events, secret, notification) |
| Delete webhook | client.webhook.delete(webhook_id) |
Workflow
| API Endpoint | Wrapper command |
|---|---|
| List workflows | client.workflow.list(kwargs) |
| Update workflow status | client.workflow.update_status(workflow_id, op, value, path) |
| Run manual workflow | client.workflow.run_manual(workflow_id, conversation_ids) |
Examples
List all conversations
>>> from helpscout import Client
>>> client = Client('<YOUR_APP_ID>', '<YOUR_APP_SECRET>')
>>> client.conversation.list()
{
"_embedded" : {
"conversations" : [ {
"id" : 10,
"number" : 12,
"threads" : 2,
"type" : "email",
"folderId" : 11,
"status" : "closed",
"state" : "published",
"subject" : "Help",
"preview" : "Preview",
"mailboxId" : 13,
...
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file helpscout-wrapper-0.0.3.tar.gz.
File metadata
- Download URL: helpscout-wrapper-0.0.3.tar.gz
- Upload date:
- Size: 11.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9fa1159e4412a99d9d224f716039975186518374b7e79749a75bd810cb562836
|
|
| MD5 |
de78cf8571b791d041a5b15596401f5a
|
|
| BLAKE2b-256 |
5a4514ac328615fa773c77c5a8f7f86b7fd4420b1ad8ac87c9e2faf4baf443d4
|
File details
Details for the file helpscout_wrapper-0.0.3-py3-none-any.whl.
File metadata
- Download URL: helpscout_wrapper-0.0.3-py3-none-any.whl
- Upload date:
- Size: 22.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8ebb61db5b46af434040b40a041467cbf034d778eeb940328e54416c6b043069
|
|
| MD5 |
19ec5c57e0093e5000c0277b612effa0
|
|
| BLAKE2b-256 |
ed6192ef6ba7ef208253b1aa784c4c973b198ec582b17aeec06061d7eca11b40
|