Skip to content
This repository has been archived by the owner on May 14, 2020. It is now read-only.

helpscout/helpscout-api-java

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
src
 
 
 
 
 
 
 
 
 
 

Help Scout Java Wrapper

Java Wrapper for the Help Scout API. More information can be found on our developer site.

Version 1.6.2 Released

Please see the Changelog for details.

Requirements

Example Usage: API

import net.helpscout.api;
import java.util.ArrayList;
import java.util.List;

public class TestingAPI {

  public static void main(String[] args) throws ApiException {
    ApiClient client = ApiClient.getInstance();
    client.setKey("your-api-key-here");

    List<String> fields = new ArrayList<String>();
    fields.add("name");
    fields.add("email");
    Page mailboxes = client.getMailboxes(fields);
    if (mailboxes != null) {
      // do something
    }

    Long mailboxId = 123456L;
    Mailbox mailbox = client.getMailbox(mailboxId);
    if (mailbox != null) {
      String mailboxName = mailbox.getName();
      Page folders = client.getFolders(mailbox.getId());
    }

    Long customerId = 123456L;
    Customer c = client.getCustomer(customerId);
    if (c.hasSocialProfiles()) {
      List<SocialProfileEntry> profiles = c.getSocialProfiles();
      // do something
    }
  }
}

Field Selectors

Field selectors are given as a list of Strings. When field selectors are used, the appropriate object is created with the fields provided.

ApiClient Methods

Each method also has a duplicate that allows you to pass in a list of Strings to specify desired fields (see Field Selectors).

Mailboxes

  • getMailboxes()
  • getMailbox(Long mailboxID)

Folders

  • getFolders(Long mailboxID)

Conversations

  • getConversationsForFolder(Long mailboxID, Long folderID)
  • getConversationsForMailbox(Long mailboxID)
  • getConversationsForCustomerByMailbox(Long mailboxID, Long customerID)
  • getConversation(Long conversationID)
  • createConversation(Conversation conversation)
  • createConversationThread(Long conversationId, ConversationThread thread)
  • updateConversation(Conversation conversation)
  • deleteConversation(Long id)

Attachments

  • getAttachmentData(Long attachmentID)
  • createAttachment(Attachment attachment)
  • deleteAttachment(Long id)

Customers

  • getCustomers()
  • getCustomer(Long customerID)
  • createCustomer(Customer customer)
  • updateCustomer(Customer customer)

Users

  • getUsers()
  • getUsersForMailbox(Long mailboxID)
  • getUser(Long userID)

Teams

  • getTeams()
  • getTeam()
  • getTeamMembers()

Example Usage: Webhooks

String secretKey = "secret-key-here";
Webhook webhook = new Webhook(secretKey, httpRequest);
if (webhook.isValid()) {
  String event = webhook.getEventType();

  if (webhook.isConversationEvent()) {
    Conversation convo = webhook.getConversation();
    // do something
  } else if (webhook.isCustomerEvent()) {
    Customer customer = webhook.getCustomer();
    // do something
  }
}

Contributing

All contributions are welcomed and reviewed. Please submit all pull requests against the develop branch.