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

feat: Add integration with Close CRM #455

Closed
9 tasks
rflihxyz opened this issue May 23, 2024 · 11 comments
Closed
9 tasks

feat: Add integration with Close CRM #455

rflihxyz opened this issue May 23, 2024 · 11 comments
Labels
backend 💎 Bounty 🔌 Connector Connectors extend our unified API so it can interact with a specific software embedded-catalog good first issue Good for newcomers 💰 Rewarded

Comments

@rflihxyz
Copy link
Contributor

rflihxyz commented May 23, 2024

Category

CRM

Platforms

Close.com

Expected Objects

  • Account
  • Contact
  • Engagement
  • Engagement Type
  • Note
  • Deal
  • Stage
  • Task
  • User
@rflihxyz rflihxyz added good first issue Good for newcomers backend embedded-catalog 🔌 Connector Connectors extend our unified API so it can interact with a specific software labels May 23, 2024
@rflihxyz rflihxyz added this to Product May 23, 2024
@rflihxyz rflihxyz moved this to Ready in Product May 23, 2024
@rflihxyz rflihxyz reopened this May 27, 2024
Copy link

greptile-apps bot commented May 27, 2024

This help was generated by greptile.com

Implementation Steps

  1. Extend CloseConnectionService to Support Custom Fields:

    • Add a new method to handle fetching custom fields from Close CRM.
    async fetchCustomFields(projectId: string) {
      const CREDENTIALS = (await this.cService.getCredentials(projectId, this.type)) as OAuth2AuthData;
      const accessToken = this.cryptoService.decrypt(CREDENTIALS.access_token);
      const res = await axios.get('https://api.close.com/api/v1/custom_field/', {
        headers: { 'Authorization': `Bearer ${accessToken}` }
      });
      return res.data;
    }
  2. Update handleCallback Method:

    • After obtaining the OAuth tokens, fetch and store custom fields.
    const customFields = await this.fetchCustomFields(projectId);
    // Store customFields in the database or process as needed
  3. Update handleTokenRefresh Method:

    • Ensure custom fields are updated when tokens are refreshed.
    const customFields = await this.fetchCustomFields(projectId);
    // Update customFields in the database or process as needed
  4. Database Schema Update:

    • Ensure the database schema can store custom fields.
    ALTER TABLE connections ADD COLUMN custom_fields JSONB;

References

/packages/api/src/@core/connections/crm/services/close/close.service.ts
/packages/api/src/@core/connections/crm/services/close

Ask Greptile

@rflihxyz
Copy link
Contributor Author

rflihxyz commented Jun 4, 2024

/bounty $200

Copy link

algora-pbc bot commented Jun 4, 2024

## 💎 $200 bounty • Panora (YC S24)

### Steps to solve:
1. Start working: Comment /attempt #455 with your implementation plan
2. Submit work: Create a pull request including /claim #455 in the PR body to claim the bounty
3. Receive payment: 100% of the bounty is received 2-5 days post-reward. Make sure you are eligible for payouts

### Additional opportunities:
* 🔴 Livestream on Algora TV while solving this bounty & earn $200 upon merge! Make sure to have your camera and microphone on. Comment /livestream once live

Thank you for contributing to panoratech/Panora!

Add a bountyShare on socials

Attempt Started (GMT+0) Solution
🔴 @lovishduggal Jun 4, 2024, 9:31:57 AM WIP
🟢 @abhishek818 Jun 4, 2024, 10:10:23 AM WIP
🟢 @neo773 Jun 4, 2024, 10:21:46 AM WIP
🟢 @rajeshj11 Jun 5, 2024, 12:23:22 PM #484

@rflihxyz
Copy link
Contributor Author

rflihxyz commented Jun 4, 2024

Hey @lovishduggal, our community can help you build this connector - feel free to checkout our discord to receive support

@abhishek818
Copy link

abhishek818 commented Jun 4, 2024

/attempt #455

Algora profile Completed bounties Tech Active attempts Options
@abhishek818 4 bounties from 3 projects
JavaScript, TypeScript
Cancel attempt

@abhishek818
Copy link

@rflihxyz Can i get this assigned ? Seems the other guy closed his attempt.

@neo773
Copy link

neo773 commented Jun 4, 2024

/attempt #455

Algora profile Completed bounties Tech Active attempts Options
@neo773 118 bounties from 25 projects
TypeScript, Rust,
Go & more
Cancel attempt

@rajesh-jonnalagadda
Copy link
Contributor

rajesh-jonnalagadda commented Jun 5, 2024

/attempt #455

Algora profile Completed bounties Tech Active attempts Options
@rajeshj11 4 bounties from 3 projects
JavaScript, TypeScript,
HTML
Cancel attempt

@lovishduggal
Copy link

Hey @rflihxyz! After reviewing my work, I've realized that I wasn't aware you were using nestJS. Currently, I'm more familiar with MERN and NextJS, but I'm really interested in learning nestJS in the near future. Once I've gained proficiency in it, I'd love to circle back to your project and contribute. Thank you for being so understanding and accommodating.

@rflihxyz rflihxyz moved this from Ready to In progress in Product Jun 5, 2024
Copy link

algora-pbc bot commented Jun 6, 2024

💡 @rajeshj11 submitted a pull request that claims the bounty. You can visit your bounty board to reward.

@rflihxyz rflihxyz moved this from In progress to In review in Product Jun 6, 2024
Copy link

algora-pbc bot commented Jun 12, 2024

🎉🎈 @rajeshj11 has been awarded $200! 🎈🎊

@rflihxyz rflihxyz moved this from 😎 In Review to ✅ Recently Released in Product Jun 16, 2024
@naelob naelob closed this as completed Jun 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backend 💎 Bounty 🔌 Connector Connectors extend our unified API so it can interact with a specific software embedded-catalog good first issue Good for newcomers 💰 Rewarded
Projects
Status: ✅ Recently Released
Development

No branches or pull requests

6 participants