InTouch Hub · Blue Isle Software

SugarCRM

Manage accounts, contacts, and opportunities in SugarCRM via its REST v11 API.

SugarCRM

Manage accounts, contacts, and opportunities in SugarCRM via its REST v11 API.

This tool lists, reads, and creates records in any SugarCRM module. It performs the OAuth2 password-grant token exchange itself, so you only supply the instance credentials once — no separate login step.

What it does

Every call is authenticated by an access token that the tool obtains via POST /rest/v11/oauth2/token (grant_type=password) and then sends in the OAuth-Token request header — exactly as the Sugar Developer Guide specifies.

apiKey setup

SugarCRM's REST login is a username/password OAuth2 exchange against your own instance, so the apiKey input packs everything needed as a pipe-delimited string:

siteUrl|username|password

Optionally append a custom OAuth client id and secret (defaults to the built-in sugar platform client with an empty secret):

siteUrl|username|password|clientId|clientSecret

Examples:

https://acme.sugarcrm.com|admin|s3cret
https://acme.sugarcrm.com|integration_user|p4ss|my_client_id|my_client_secret

Inputs

Input Required Description
apiKey yes siteUrl|username|password (optionally |clientId|clientSecret)
operation yes One of: list_records, get_record, create_record
module yes Module name, e.g. Accounts, Contacts, Opportunities, Leads
recordId for get_record Record GUID
filter optional JSON filter array for list_records (Sugar filter param)
fields optional Comma-separated field list to return
maxNum optional Max records for list_records (default 20)
data for create_record JSON object of field names to values

Outputs

Examples

List the 10 most recent accounts whose name starts with "A":

operation: list_records
module:    Accounts
filter:    [{"name":{"$starts":"A"}}]
fields:    id,name,website,phone_office
maxNum:    10

Read a single contact:

operation: get_record
module:    Contacts
recordId:  9c8b7a6d-1234-5678-90ab-cdef01234567
fields:    id,first_name,last_name,email1

Create an opportunity:

operation: create_record
module:    Opportunities
data:      {"name":"Acme Q3 Expansion","amount":"50000","sales_stage":"Prospecting"}

Notes