Installation and testing guide · Leer en español
MyReportify for HubSpot
MyReportify writes the monthly marketing report that agencies send to their clients. The HubSpot integration adds a CRM section to the client's monthly report: how many contacts and deals were created last month, how many deals were won and their total amount, compared with the previous month.
1. Prerequisites
- A MyReportify account. Anyone can create one for free at myreportify.com/auth/register (no card needed). For the review, the test account details are given privately in the submission form, never on this page.
- A client created in MyReportify (Clients → New client). The test account already has one.
- A HubSpot account you can sign in to. A free or test account is enough; with no activity, the figures read as zero.
2. Install (connect HubSpot)
- Sign in to MyReportify at myreportify.com/auth/login.
- Open Clients, open the client and click Edit.
- Scroll to the Store, email and CRM section and find the HubSpot card.
- Click Connect with HubSpot.
- Sign in to HubSpot, choose the account if asked, and approve the read-only permissions.
- You are sent back to MyReportify. The card now reads Connected by signing in and shows the account name.
3. Test the functionality
- On the HubSpot card, click Check. MyReportify reads last month and the month before from HubSpot, live, and shows the figures the next report will use.
- Compare them with what HubSpot shows for the same month. They should match (an empty account shows zeros).
- Optional: on the client page, Generate report creates last month’s report. The HubSpot figures appear in their own section of the report page and of the PDF. A full report also needs Google Analytics connected; the test account has it.
4. What MyReportify reads
- The portal ID, time zone and currency (account info).
- The number of contacts created in the month (CRM search, total only).
- The number of deals created in the month (CRM search, total only).
- For deals closed as won in the month: only their amount, to add up the total.
Permissions requested
oauth: Required by HubSpot for OAuth apps.crm.objects.contacts.read: Count the contacts created in the month.crm.objects.deals.read: Count the deals created and won in the month, and add up the won amount.
MyReportify never reads contact properties, deal names or any personal data, and never creates, edits or deletes anything in HubSpot. Only the monthly totals are stored, as part of the report. Tokens are kept on our server only and are never shown in the browser.
5. API endpoints and scopes
| Endpoint | Use | Scope |
|---|---|---|
POST https://api.hubapi.com/oauth/v1/token | Exchange the authorization code and refresh the access token (30 min). | — |
DELETE /oauth/v1/refresh-tokens/{token} | Revoke access when the user clicks Remove. | — |
GET /account-info/v3/details | Portal ID, time zone and currency. | oauth |
POST /crm/v3/objects/contacts/search | Count contacts created in the month (limit 1, total only). | crm.objects.contacts.read |
POST /crm/v3/objects/deals/search | Count deals created in the month; sum the amount of deals won in the month. | crm.objects.deals.read |
6. Architecture and data flow
The agency starts the connection from MyReportify; HubSpot asks the user to approve the read-only scopes and returns an authorization code to MyReportify’s callback. Our server exchanges it for tokens, encrypts them (AES-256-GCM) and stores them in our database, which is never reachable from the browser. When the agency clicks Check or generates a report, our server reads last month and the month before from HubSpot’s API over HTTPS, keeps only the monthly totals and adds them to the report. The browser only ever sees the totals and the account name. Hosting: Vercel (application) and Supabase (PostgreSQL database).
7. Uninstall
- In MyReportify: on the HubSpot card, click Remove. The stored tokens are deleted at once.
- In HubSpot, go to Settings → Integrations → Connected apps → MyReportify → Uninstall.
- Figures already included in past reports stay in those reports. To delete everything, delete the client or the MyReportify account (Settings → Delete account).
8. Support
Email hola@myreportify.com. Privacy policy: myreportify.com/privacy. Terms: myreportify.com/terms.