HubSpot Kotlin SDK ๐Ÿงบ Implementation of HubSpot API for Java/Kotlin in tiny SDK

Related tags

SDK hubspot
Overview

๐Ÿค– HubSpot Kotlin SDK

General implementation of HubSpot CRM API in tiny Kotlin SDK.

๐ŸŽˆ Currently in progress, send issues or pull requests ๐Ÿ™Œ๐Ÿผ

๐Ÿš€ Install from offical Maven repository with com.goforboom:hubspot-sdk:$VERSION
โš ๏ธ GitHub packages is depricated, use official Maven repository

Supported features

Feature List Read Create Change Delete
Company โŒ โœ… โœ… โœ… โœ…
Contact โŒ โŒ โŒ โŒ โŒ
Deal โŒ โŒ โŒ โŒ โŒ

Usage Examples

Basic SDK client configuration

Integrations -> API Keys -> Active API Key apiKey = "xxx" )">
// All basic types are supported
class MyCustomCompanyProperties(
    val name: String,
    val age: Int,
    val email: String,
    val newsletter: Boolean,

    // You can customize final property name send to HubSpot API
    @JsonProperty("billing_bank_iban")
    val iban: String? = null
)

val client = Client(
    apiBasePath = "https://api.hubapi.com",

    // Found in HubSpot company management -> Integrations -> API Keys -> Active API Key
    apiKey = "xxx"
)

Create brand-new company

val companyRequest = CompanyRequest(
    properties = MyCustomCompanyProperties(
        name = "John Doe",
        age = 34,
        email = "[email protected]",
        newsletter = true
    )
)

val companyResponse = companiesClient.createCompany(companyRequest)

println(companyResponse.id) // HubSpot company ID
println(companyResponse.properties["name"]) // John Doe

Change existing company

val companyRequest = CompanyRequest(
    properties = MyCustomCompanyProperties(
        name = "John Doe",
        age = 34,
        email = "[email protected]",
        newsletter = true
    )
)

val companyResponse = companiesClient.changeCompany(123456789, companyRequest)

println(companyResponse.id) // HubSpot company ID
println(companyResponse.properties["name"]) // John Doe
You might also like...
WalletConnect Kotlin SDK v2

WalletConnect V2 - Kotlin Kotlin implementation of WalletConnect v2 protocol for Android applications. Requirements Android min SDK 21 Java 11 Install

Official Appwrite Kotlin SDK ๐Ÿ’™๐Ÿงก
Official Appwrite Kotlin SDK ๐Ÿ’™๐Ÿงก

Appwrite Kotlin SDK This SDK is compatible with Appwrite server version 0.11.x. For older versions, please check previous releases. This is the Kotlin

Implement a Casper Kotlin SDK to interact with the Casper network.
Implement a Casper Kotlin SDK to interact with the Casper network.

CSPR-Kotlin-SDK Kotlin SDK library for interacting with a CSPR node. What is CSPR-Kotlin-SDK? SDK to streamline the 3rd party Kotlin client integratio

Android Word/Letter Tracing SDK is a complet solution to build apps for kids learning in pure kotlin
Android Word/Letter Tracing SDK is a complet solution to build apps for kids learning in pure kotlin

Android Word/Letter Tracing SDK is a complet solution to build apps for kids learning in pure kotlin. It supports all kind of shapes and all language letters e.g. english, arabic, Urdu, hindi etc.

AWS SDK for Android. For more information, see our web site:

AWS SDK for Android For new projects, we recommend interacting with AWS using the Amplify Framework. The AWS SDK for Android is a collection of low-le

Countly Product Analytics Android SDK
Countly Product Analytics Android SDK

Countly Android SDK We're hiring: Countly is looking for Android SDK developers, full stack devs, devops and growth hackers (remote work). Click this

Android Real Time Chat & Messaging SDK
Android Real Time Chat & Messaging SDK

Android Chat SDK Overview Applozic brings real-time engagement with chat, video, and voice to your web, mobile, and conversational apps. We power emer

Evernote SDK for Android

Evernote SDK for Android version 2.0.0-RC4 Evernote API version 1.25 Overview This SDK wraps the Evernote Cloud API and provides OAuth authentication

Air Native Extension (iOS and Android) for the Facebook mobile SDK

Air Native Extension for Facebook (iOS + Android) This is an AIR Native Extension for the Facebook SDK on iOS and Android. It has been developed by Fr

Comments
  • HubSpot API key - no logner supported

    HubSpot API key - no logner supported

    Auth via simple api key in the queryParam hapiKey will no longer be supported image

    all types of auth -> https://developers.hubspot.com/docs/api/intro-to-auth

    Migration to private apps -> https://developers.hubspot.com/docs/api/migrate-an-api-key-integration-to-a-private-app?_ga=2.219255578.2015489188.1667203677-150736044.1665476086

    opened by dulajo 3
  • BOOM-2355: HubSpot API key - no logner supported

    BOOM-2355: HubSpot API key - no logner supported

    Fixes #4

    Next steps:

    • Create private app in hubspot (done for Boom)
    • Update the library
    • Replace the current api key with the new api key

    Changelist:

    • replaced hapiKey query parameter with Authorization header
    • increased minor version number
    opened by DejfCold 1
  • Implemented V2 Analytics API

    Implemented V2 Analytics API

    Implemented V2 Analytics API: https://legacydocs.hubspot.com/docs/methods/analytics/analytics-overview

    I'm not returning any values for now, so draft it is.

    opened by DejfCold 0
  • Map incoming company `properties` request to value object

    Map incoming company `properties` request to value object

    Introduction

    Right now API properties attribute in company response (https://github.com/goforboom/hubspot/blob/main/hubspot/src/main/kotlin/com/goforboom/hubspot/domain/company/Company.kt) is mapped just to dummy Map<String, Any> object but would be great to map it to custom value object (same in requests).

    Issue description

    There is some trouble with Generic and Jackson mapping because https://github.com/FasterXML/jackson-databind/issues/921 and LinkedHashMap because Java lost Generic information in runtime and Jackson is no able to map incoming request property to right type. I partially fix this issue in our Fakturoid implementation (https://github.com/goforboom/fakturoid/blob/1dd7dfbcbd9e4b6166c1965ce38aed58435b33c3/fakturoid/src/main/kotlin/com/goforboom/fakturoid/model/mapper/Mapper.kt#L20) with TypeReference<R> but in current implementation problem is deeper, we want to transfer type with generic in generic:

    class Company<P>(
        val id: Int,
        val props: P
    )
    

    Any help is welcome! ๐Ÿ™Œ๐Ÿผ

    feature help 
    opened by sitole 0
Releases(v1.2.0)
  • v1.2.0(Nov 3, 2022)

  • v1.1.0(Jun 3, 2022)

    What's Changed

    • Support for HubSpot custom objects by @sitole in https://github.com/goforboom/hubspot/pull/3

    New Contributors

    • @sitole made their first contribution in https://github.com/goforboom/hubspot/pull/3

    Full Changelog: https://github.com/goforboom/hubspot/compare/v1.0.2...v1.1.0

    Source code(tar.gz)
    Source code(zip)
  • v1.0.2(Apr 22, 2022)

    • Removed global Unirest JSON mapper, this global override can affect other apps/libs using Unirest
    • Configuration for new Maven package registry (removed GitHub package registry)
    Source code(tar.gz)
    Source code(zip)
  • v1.0.0(Apr 20, 2022)

  • v0.0.1(Apr 19, 2022)

Owner
BOOM
A slightly different platform for selling tickets. โค๏ธ
BOOM
Segmenkt - The SegmenKT Kotlin SDK is a Kotlin-first SDK for Segment

SegmenKT Kotlin SDK The SegmenKT Kotlin SDK is a Kotlin-first SDK for Segment. I

UNiDAYS 0 Nov 25, 2022
Streem Server SDK for Java & Kotlin

Streem Server SDK for Java & Kotlin Server-side JVM library for interacting with the Streem API, and generation of Streem Tokens for use in client SDK

Streem, Inc. 1 Dec 15, 2022
Java/Kotlin WE contract SDK.

we-contract-sdk Java/Kotlin contract SDK used for building Docker smart contracts. All transaction handling is done via methods of a single class mark

Waves Enterprise 19 Oct 10, 2022
Sdk-android - SnapOdds Android SDK

Documentation For the full API documentation go to https://snapodds.github.io/sd

Snapodds 0 Jan 30, 2022
Frogo SDK - SDK Core for Easy Development

SDK for anything your problem to make easier developing android apps

Frogobox 10 Dec 15, 2022
CodingChallenge: A simple SDK. Which can provide you information related to Start Wars APi

CodingChallenge CodingChallenge is a simple SDK. Which can provide you informati

Wajahat Hussain 1 Feb 18, 2022
Its measurement app made using kotlin with sceneform sdk by google

ARCORE MEASUREMENT This app is build using sceneform sdk for android using kotlin language It helps you measure the distance between multiple points i

Kashif Mehmood 39 Dec 9, 2022
Storyblok Kotlin Multiplatform SDK sample (Android, JVM, JS)

storyblok-mp-SDK-sample *WIP* ... a showcase of the Storyblok Kotlin Multiplatform Client SDK. (Android, JVM, JS, iOS, ...) What's included ?? โ€ข About

Mike Penz 6 Jan 8, 2022
Kotlin Multi Platform SDK

Xeon SDK (work-in-progress ?? ??๏ธ ??โ€โ™€๏ธ โ› ) Development Version Release This Is Latest Release ~ In Development $version_release = ~ What's New?? * I

Frogobox 3 Oct 15, 2021
NextPay Kotlin SDK

Welcome to nextpay-kt ?? Connect to NextPay.ir payment gateway in easy way. ?? Homepage Setup Kotlin KTS 1- Add mavenCentral() to your repositories se

Farhad 5 Nov 6, 2021