Input & Output

The dc3Api/scenarios endpoint retrieves duplicate scenario configurations for a specified Salesforce object. It supports identifying the object by either its prefix or API name and returns only visible (non-hidden) scenarios, including detailed field matching configurations.

Authentication

The dc3Api/scenarios endpoint requires authentication via Salesforce OAuth 2.0. Requests must include a valid OAuth access token in the Authorization header.

All endpoints require an API license (checkApiLicense()).

Method Signature

GET /services/apexrest/dupcheck/dc3Api/scenarios

Query Parameters

ParameterTypeRequiredDescription
prefixStringNoThe Salesforce object prefix (e.g., 00Q for Lead).
objectNameStringNoThe Salesforce object API name (e.g., Lead, Account, Contact).
  • Either prefix or objectName can be used; the endpoint converts objectName to prefix automatically.
  • Query parameters are case-sensitive.

Usage Examples

  • Using prefix:

    GET /dc3Api/scenarios?prefix=00Q
  • Using object name:

    GET /dc3Api/scenarios?objectName=Lead

Response

Returns all visible scenarios for the specified object. Hidden scenarios (where isHidden=true) are automatically excluded. Responses include complete scenario field configuration (match methods, weights, index groups, etc.). Scenario IDs are returned as strings.

Example Response

{
    "ok": true,
    "scenarios": [
        {
            "scenarioId": "a0X1234567890ABC",
            "scenarioName": "Name Match",
            "scoreMethod": "SEARCH",
            "threshold": 75,
            "onApi": true,
            "onBatch": true,
            "onSearch": true,
            "onInsert": true,
            "isHidden": false,
            "scenarioFields": [
                {
                    "scenarioFieldId": "a0Y1234567890DEF",
                    "field": "FirstName",
                    "matchMethod": "FUZZY_PERSON",
                    "matchConfig": null,
                    "synonymList": null,
                    "frequentList": "PERSON",
                    "weight": 10,
                    "doNotIndex": false,
                    "indexGroup": [1]
                },
                {
                    "scenarioFieldId": "a0Y1234567890GHI",
                    "field": "LastName",
                    "matchMethod": "FUZZY_PERSON",
                    "weight": 10,
                    "indexGroup": [1]
                }
            ]
        }
    ]
}

Notes

  • Invalid inputs return clear error messages.
  • Backward compatibility is maintained with existing functionality.