The Same Module, Different Strengths
Data Builder gives Perfex CRM both REST API and GraphQL through a single module. They share authentication, security, and error handling. This guide helps you choose the right approach for each integration scenario.
Choose REST When
-
You need simple CRUD on one table at a time
-
Your integration platform expects HTTP endpoints (Zapier, Make.com, n8n)
-
You want URL-based filtering and pagination
-
You need polling with
?since=for incremental sync -
You are testing with Postman or curl
# REST: straightforward and predictable
GET https://databuilder.polyxgo.com/api/v1/invoices?status=2&sort=-total&per_page=5
Choose GraphQL When
-
You need data from multiple tables in one request
-
Your mobile app needs minimal data transfer
-
Your dashboard combines clients + invoices + projects
-
You want write operations with auto-generated input types
-
Your frontend needs flexible field selection
# GraphQL: precise and flexible
{
clients(limit: 5) {
company phonenumber
invoices(sort: "-total") { total status }
projects { name deadline_date }
}
}
Decision Matrix
| Integration Type | Recommended | Why |
|---|---|---|
| Zapier/Make.com automation | REST | Simple webhooks, polling triggers |
| React/Vue dashboard | GraphQL | Single request, exact fields |
| Mobile app (Android/iOS) | GraphQL | Bandwidth optimization |
| WordPress CMS | Either | Both work with fetch() |
| ChatGPT Actions | REST | OpenAPI spec compatibility |
| Batch data export | REST | Paginated list endpoints |
Learn More
-
How REST API Works (with examples)
-
Complete GraphQL Guide (queries, mutations, introspection)