API

Custom fields that contain default or calculated values can now display in the Search API for OpenData search results.

Custom fields can be created to store calculated (formula) fields in Network. For example, you can use a lookup table in a NEX rule to populate restricted products into a custom field. These fields can use OpenData values as part of the formula, however, custom fields do not display in search results for records still in the OpenData instance.

Administrators can use a new setting on custom fields to display the default or calculated field values on search results to help end users select the relevant entity to download in Veeva CRM.

This enhancement is available by default in your Network instance. Administrators and Data Managers can enable the setting on custom fields.

Note: This setting displays default or calculated fields on search results for Veeva OpenData records in the Search API and in Veeva CRM.
It does not display the field values when you are previewing OpenData records to download in the Network UI or in Network Widgets.

Enable the field setting

The Calculate for search results from OpenData setting is available on custom fields for all Veeva standard objects.

To enable the setting:

  1. Open a custom field (Data Model) on a Veeva object.

    Note: This setting is not supported for the following custom field types: Primary (Network Calculated or Unique Checkbox) and Alternate Key.

  2. In the Country Visibility and Field Rules section, select the Calculate for search results from OpenData setting.

    The setting is available for NEX Rule and Default Value rule types.

    Support for NEX rule expressions include Lookup functions.

  3. Save your changes.

When you search for a record, the field with the default or calculated (NEX rule) value displays on OpenData records that have not yet been downloaded to your Network instance.

Important: The default or calculated value cannot be used to filter for records in Veeva OpenData. The values are calculated for search results only.

Example

When a sales rep searches for an HCP in Veeva CRM, the Restricted Products custom field displays with the calculated value so the rep can decide if they should download the record from OpenData.

Search API

When Integration Users search for records, custom fields with the Calculate for search results from OpenData setting enabled will display the default or NEX rule calculated value in the Search API response.

Example response

The Calculate for search results from OpenData setting is indicated by the resultIsFromMaster value.

Match API

Reference value labels and reference aliases are now supported in Match API results.

API version

The parameters are supported for Network API version 29. If the parameters are used in earlier API versions, they are ignored.

Parameters

New optional parameters:

  • enrichedResults - Specifies whether or not to display labels for reference type fields in the results.

  • resultLanguage - Specifies the language to use if the enriched results option is enabled. Uses the IETF BCP 47 language standard.

  • systemName - When provided, Network returns target alias values defined for reference codes for this system. Otherwise, Network returns default reference code values.

Display reference value labels

Use the following parameters to display the reference value labels in the Match API:

  • enrichedResults

  • resultLanguage

Example request

Return reference value labels in English (en).

POST https://{{DNS}}/api/{{version}}/match/?enrichedResults=true&resultLanguage=en

Note: Language labels are indicated by value__u fields.

Example response

{
    "responseStatus": "SUCCESS",
    "results": {
        "matchSetup": {...},
        "sourceEntity": {...},
        "matchedEntities": [
            {
                "metaData": {...},
                "matchResult": {...},
                "entityType": "HCP",
                "entityId": "940676573928359999",
                "entity": {
                    "addresses__v": [
                        {
                            "address_line_1__v": "7777 Southwest Fwy Ste 540",
                            "locality__v": "Houston",
                            "premise__v": "7777",
                            "thoroughfare__v": "Southwest Fwy",
                            "administrative_area__v": "US-TX",
                            "administrative_area__v_value__u": "Texas",
                        }
                    ],
                    "email_1__v": "cooper.lopez@gmail.com",
                    "vid__v": "940676573928359999",
                    "first_name__v": "Cooper",
                    "last_name__v": "Lopez",
                    "specialty_1__v": "GS",
                    "specialty_1__v_value__u": "General Surgery",
                    "primary_specialty_group__v": "G-SURG",
                    "primary_specialty_group__v_value__u": "Surgery",
                    "medical_degree_1__v": "MD",
                    "medical_degree_1__v_value__u": "Doctor of Medicine",
                    ...
                }
            },
            ...
        ]
    }
}

Display reference alias names of reference values

Use the following parameters to display the reference value labels in the Match API:

  • systemName

  • enrichedResults

Reference aliases

Reference aliases can be defined in System Interfaces > Reference Aliases for any source system defined in your Network instance.

Example reference alias

Example request

Return the target alias names from the system called demo.

POST https://{{DNS}}/api/{{version}}/match/?enrichedResults=true&systemName=demo

Note: Target system alias names are indicated by value__u fields.

Example response

{
    "responseStatus": "SUCCESS",
    "results": {
        "matchSetup": {...},
        "sourceEntity": {...},
        "matchedEntities": [
            {
                "metaData": {...},
                "matchResult": {...},
                "entityType": "HCP",
                "entityId": "940676573928359519",
                "entity": {
                    "addresses__v": [
                        {
                            "address_line_1__v": "7777 Southwest Fwy Ste 540",
                            "locality__v": "Houston",
                            "premise__v": "7777",
                            "thoroughfare__v": "Southwest Fwy",
                            "administrative_area__v": "US-TX",
                            "administrative_area__v_value__u": "Texas",
                        }
                    ],
                    "email_1__v": "astrid.gonzales@gmail.com",
                    "vid__v": "940676573928359519",
                    "first_name__v": "Astrid",
                    "last_name__v": "Gonzales",
                    "specialty_1__v": "Peds Alias",
                    "specialty_1__v_value__u": "Peds Alias Name",
                    "primary_specialty_group__v": "G-PD",
                    "primary_specialty_group__v_value__u": "Pediatrics",
                    "medical_degree_1__v": "MD",
                    "medical_degree_1__v_value__u": "Doctor of Medicine",
                    ...
                }
            },
            ...
        ]
    }
}

Display reference aliases

Use the following parameter to display the reference aliases for reference values in the Match API:

  • systemName

Example request

Display reference aliases for the source system called demo.

POST https://{{DNS}}/api/{{version}}/match/?systemName=demo

Example response

{
    "responseStatus": "SUCCESS",
    "results": {
        "matchSetup": {...},
        "sourceEntity": {...},
        "matchedEntities": [
            {
                "metaData": {...},
                "matchResult": {...},
                "entityType": "HCP",
                "entityId": "940676573928359519",
                "entity": {
                    "addresses__v": [
                        {
                            "address_line_1__v": "7777 Southwest Fwy Ste 540",
                            "locality__v": "Houston",
                            "premise__v": "7777",
                            "thoroughfare__v": "Southwest Fwy",
                            "administrative_area__v": "US-TX",
                        }
                    ],
                    "email_1__v": "astrid.gonzales@gmail.com",
                    "vid__v": "940676573928359519",
                    "first_name__v": "Astrid",
                    "last_name__v": "Gonzales",
                    "specialty_1__v": "Peds Alias",
                    "primary_specialty_group__v": "G-PD",
                    "medical_degree_1__v": "MD",
                    ...
                }
            },
            ...
        ]
    }
}

Submit reference aliases

Use the following parameter to submit a Match API request using source aliases:

  • systemName

Example request

POST https://{{DNS}}/api/{{version}}/match/?systemName=demo

Example response

{
    "entity_type": "HCP",
    "entity": {
        "first_name__v": "Astrid",
        "last_name__v": "G",
        "primary_country__v": "US",
        "specialty_1__v": "Ped Alias"
        "addresses__v": [{
            "administrative_area__v" : "TX"
        }]
    }
}