panoratech / Panora

Add an integration catalog to your SaaS product in minutes
https://docs.panora.dev
Apache License 2.0
375 stars 76 forks source link

feat: Add integration with Close CRM #455

Closed rflihxyz closed 2 weeks ago

rflihxyz commented 1 month ago

Category

CRM

Platforms

Close.com

Expected Objects

greptile-apps[bot] commented 1 month ago

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 commented 1 month ago

/bounty $200

algora-pbc[bot] commented 1 month ago

## 💎 $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 bounty • Share 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 commented 1 month ago

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

abhishek818 commented 1 month ago

/attempt #455

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

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

neo773 commented 1 month ago

/attempt #455

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

/attempt #455

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

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.

algora-pbc[bot] commented 4 weeks ago

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

algora-pbc[bot] commented 3 weeks ago

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