Skip to content

Veeva Site Connect: Send to Select Sites

Initiate the distribution of a Safety Distribution record to a specified list of sites. This endpoint creates Distribution Task (distribution_task__v) records for the related document and supporting documents for each site, creates Distribution Task Recipient (distribution_task_recipient__v) records, and regenerates viewable renditions for any documents whose most recent e-signature was applied after the last Veeva Site Connect rendition was generated.

This endpoint executes synchronously and returns per-site results immediately. Job IDs and status polling are not required.

Use the Distribute to Sites endpoint to target all sites associated with a Safety Distribution. Learn more about Safety Distributions in Vault Help.

POST/api/{version}/app/clinical/safety_distributions/{id}/actions/send_to_select_sites
NameDescription
Content-Typeapplication/json (default)
Acceptapplication/json (default) or application/xml
NameDescription
{id}The record ID of the Safety Distribution to send.

Include a JSON object with the following:

NameDescription
sites requiredA JSON array of Study Site record IDs to receive the Safety Distribution. Each ID corresponds to a Study Site record in your Clinical Operations Vault. A maximum of 500 sites are allowed to be processed at one time.
curl -X POST -H "Authorization: {AUTH_VALUE}" \
-H "Content-Type: application/json" \
--data-raw '{
   "sites": [
     "0SI000000001001",
     "0SI000000002001",
     "0SI000000003001"
   ]
}' \
https://myvault.veevavault.com/api/v26.2/app/clinical/safety_distributions/V56000000001004/actions/send_to_select_sites
{
    "responseStatus": "SUCCESS",
    "data": [
        {
            "site_id": "0SI000000001001",
            "responseStatus": "SUCCESS"
        },
        {
            "site_id": "0SI000000002001",
            "responseStatus": "SUCCESS"
        },
        {
            "site_id": "0SI000000003001",
            "responseStatus": "FAILURE",
            "errors": [
                {
                    "type": "INVALID_DATA",
                    "message": "Site is invalid due to being filtered out by the inclusion/exclusion filter."
                }
            ]
        },
        {
            "site_id": "0SI000000004001",
            "responseStatus": "FAILURE",
            "errors": [
                {
                    "type": "PARAMETER_REQUIRED",
                    "message": "Required request parameter 'id' is invalid."
                }
            ]
        },
        {
            "site_id": "0SI000000005001",
            "responseStatus": "FAILURE",
            "errors": [
                {
                    "type": "UNEXPECTED_ERROR",
                    "message": "An unexpected error has occurred. If this issue persists, please contact Veeva Support."
                }
            ]
        }
    ]
}

On SUCCESS, the response returns a per-site result in the data array. Individual sites can succeed or fail independently. The operation does not fail if some sites result in a failure.

NameDescription
site_idThe record ID of the site.
responseStatusSUCCESS if distribution was initiated for the site, FAILURE if the site was rejected.
errorsPresent only when responseStatus is FAILURE for the site. Each error includes a type and a human-readable message.

If the request itself fails, the top-level responseStatus is FAILURE and no data array is returned. For example, the request will fail due to a missing or invalid id.