Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New Source: SalesLoft #4471

Closed
sherifnada opened this issue Jul 1, 2021 · 10 comments · Fixed by #6962
Closed

New Source: SalesLoft #4471

sherifnada opened this issue Jul 1, 2021 · 10 comments · Fixed by #6962

Comments

@sherifnada
Copy link
Contributor

Tell us about the new connector you’d like to have

Describe the context around this new connector

@sherifnada sherifnada added area/connectors Connector related issues new-connector labels Jul 1, 2021
@karinakuz karinakuz self-assigned this Aug 11, 2021
@karinakuz
Copy link
Contributor

karinakuz commented Aug 11, 2021

Integration Vetting

Webhook-based? (no/partially/yes)
if partially, mention which endpoints are webhook-based

partially, events are described here https://developers.salesloft.com/webhooks.html#intro

Available authentication modes (API key/Oauth/other)

SalesLoft uses OAuth 2.0 authorization flow to generate access tokens that your application can use against the API.

Connecting to the data source

what kind of API is it? (SOAP/GraphQL/REST/other)
The SalesLoft API provides an easy REST-ful way to programmatically interact with your SalesLoft instance data.

is there an SDK available? Can we connect with HTTP requests directly?
After using OAuth 2.0 to authorize an account, the REST API is accessed over HTTP to push and pull data from SalesLoft.

If this is a database/datalake/pubsub source, does it have a JDBC driver or Java SDK?
no

Creating an account
Select one of the below options
self-service free account available?_ If yes then create it using [email protected] (you should be getting emails sent to this email address)

_In order to get started using the API, you will want to follow a few steps:

  1. Login to accounts.salesloft.com with the account that will own your OAuth App_

To create a sandbox account I sent letter to [email protected]
There is no information how to create live account and about tariff plans on the official site, only Request Price option is available.

@karinakuz
Copy link
Contributor

karinakuz commented Aug 13, 2021

Call result:

For more information on our partner programs: https://salesloft.com/partner-with-salesloft/ and https://help.salesloft.com/s/article/Getting-Started-with-the-SalesLoft-API

Please follow the below instructions to get started on your integration.

  1. Apply for the partner portal by clicking here https://partners.salesloft.com/English/register_email.aspx?d_utk=e880ea8d-23fa-424c-b68d-aa59861525e4
  2. Sign the partner agreement that will be sent once you register
  3. Sign into the partner portal with the credentials you receive after signing
  4. Review the partner program overview explaining the program tiers and benefits
  5. Navigate to the "Integrations" tab and read through the technology program overview with instructions on applying for a developer license

@sherifnada
Copy link
Contributor Author

@karinakuz I created an account by following steps 2-4, could you move it to the last phase? we can implement as soon as it's ready!

@karinakuz
Copy link
Contributor

@sherifnada thank you! working on it.

@karinakuz
Copy link
Contributor

karinakuz commented Sep 17, 2021

How to populate the account with data?

Can it be done entirely through the API?
yes

Will it require some work through the UI? If so, what is required?
no

Will it require performing some paid action like running an Ad campaign? If so, please note the action needed, estimated cost, and estimated effort in hours. If a task will take more than 4 hours, please break it down into smaller tasks each of which take no more than 4 hours

no

Do you need any actions from Airbyte to populate the account with data? If so, please tag @ sherifnada for support

no

Available streams for sync
If this is an API connector:
Provide a link  to the reference docs 
https://developers.salesloft.com/api.html

Main:

Get all Accounts https://developers.salesloft.com/api.html#!/Accounts/get_v2_accounts_json

Get all Actions https://developers.salesloft.com/api.html#!/Actions/get_v2_actions_json
Get all Steps https://developers.salesloft.com/api.html#!/Steps/get_v2_steps_json
Get all Cadences https://developers.salesloft.com/api.html#!/Cadences/get_v2_cadences_json

Get all Calls https://developers.salesloft.com/api.html#!/Calls/get_v2_activities_calls_json

Get all Emails https://developers.salesloft.com/api.html#!/Emails/get_v2_activities_emails_json
Get all Notes https://developers.salesloft.com/api.html#!/Notes/get_v2_notes_json
Get all People https://developers.salesloft.com/api.html#!/People/get_v2_people_json

Get all  Tasks https://developers.salesloft.com/api.html#!/Tasks/get_v2_tasks_json
Get all Users https://developers.salesloft.com/api.html#!/Users/get_v2_users_json

Please mention if any of the endpoints are asynchronous (meaning we have to make a request, wait for the server to compute a response, then make another request to obtain the result)
no

if this is a source where the schema is dynamic/not fixed e.g: database, mention the data model of the connector i.e: relational, document-based, graph-based, etc

no

Do any streams support incremental sync?
not necessary to mention all of them, just saying “none”, “some”, or “all” is sufficient. If only some streams, please mention which ones support incremental sync

all

@karinakuz
Copy link
Contributor

karinakuz commented Sep 17, 2021

Creating the account
[ ] create an account, get Client Id, Client Secret (30m)


Generating access credentials to the account
[ ] in Postman authorise user: get code and create Access/Refresh Tokens that can be used to access the API (4h)

Populating the account with data
[ ] Do activities on the account: open/close 10 times, change profile data. Create API for main streams and verify I get in response correct data for all users on the site. Add notes to LastPass Description (6h).

Describing the output schema
[ ] Converting JSON to JSON Schema (30m)
https://drive.google.com/drive/folders/1jYwF-NK_ByPL7W7lA1POeVku8Xl468jX?usp=sharing or
https://drive.google.com/drive/folders/1aF9x07UuxahZcUMXHs8Dv3ZDKw1FgYYt?usp=sharing

@prasrvenkat
Copy link
Contributor

@marcosmarxm @sherifnada
Not sure if anyone is working on this as of now. We needed it and so have written something with few streams (Cadences, CadenceMemberships, People, Users) and OAuth and using it. (Luis @lgomezm wrote it)

Would it make sense or useful if we contribute that back here (we just have to wrap up few checklist items before sending it here)? and then additional streams can be added on top. Let me know.

@sherifnada
Copy link
Contributor Author

@prasrvenkat absolutely! Let us know how we can help

@prasrvenkat
Copy link
Contributor

@prasrvenkat absolutely! Let us know how we can help

Ok thanks, will send the PR in a day or so.

@prasrvenkat
Copy link
Contributor

@prasrvenkat absolutely! Let us know how we can help

Ok thanks, will send the PR in a day or so.

Its out there now #6962
I remember adding to index yaml based on an autogenerated .json, not sure if that is not automatic anymore, let me know if I should add with some random UUID.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants