Update NPI List With Attributes

Update an existing NPI List with Attributes by removing or adding full records. This endpoint will not allow you to adjust an existing record with different attribute values. If values have changed for a given NPI, you should remove the record from this list and resend it with the updated attribute values.

Endpoint

Method: Patch

https://lifeapi.pulsepoint.com/RestApi/v2/npi/npi-list/{id}/attributes

Path Parameter: ID of the list you want to update

Body Parameters

Certain fields are required when adding to the existing list and others are required when removing records from your list. Ensure you pay attention to what is required for which operation when using this endpoint.

You cannot add and remove different sets of data within the same PATCH call.

Field List

NameData TypeRequiredNotes
operationString - EnumYesValid values: add, remove
attributesarray of stringsYes - only for add operationThis is the list of field names on your NPI with attribute list. The order doesn't matter, but the names need to match exactly to the existing list.
attributeValuesarray of stringsYes - only for add operationThese are the values that correspond to the field names in the attributes array. The values need to match the order in which you supplied their attribute names. Null values or empty strings are accepted
npiColumnIndexnumericYes - only for add operationIdentifies which field has the NPI number in it. This needs to match what was in your original list. 0 is the first field.
npisarray of stringsYes - only for remove operationList of NPIs that correspond to records you want to remove from the list. If more than one record has a the same NPI, and that NPI is included in your remove operation call, all of the corresponding records will be deleted from the list.

Example - add

{
  "operation": "add",
  "attributes": [
    "NPI",
    "Campaign ID"
  ],
  "attributeValues": [
    [
      "1234567890","839202",
      "2345678901","839202"
    ]
  ],
  "npiColumnIndex": 0
}

Example - remove

{
  "operation": "remove",
  "npis": [
    "1234567890", "234567890"
  ]
}

Errors

404 unable to find the specified NPI List

{
  "success": false,
  "status": 404,
  "timestamp": "2025-10-31T16:24:11.342602",
  "path": "/RestApi/v2/{resource}",
  "operation": "{HTTP_METHOD}",
  "error": {
    "code": "RESOURCE_NOT_FOUND",
    "message": "Requested resource not found.",
    "details": [
      {
        "code": "NPI_LIST_NOT_FOUND",
        "message": "NPI List not found for the given id.",
        "field": "npiListId",
        "value": 4206756345
      }
    ]
  }
}

403 Unauthorized To See Specified List

{
  "success": false,
  "status": 403,
  "timestamp": "2025-10-31T16:25:36.416974",
  "path": "/RestApi/v2/{resource}",
  "operation": "{HTTP_METHOD}",
  "error": {
    "code": "ACCESS_DENIED",
    "message": "Access to this resource is denied.",
    "details": [
      {
        "code": "INSUFFICIENT_PERMISSIONS",
        "field": "npiListId",
        "message": "You do not have permission to access this NPI List.",
        "value": 42067
      }
    ]
  }
}

422 Business Logic Violation

{
  "success": false,
  "status": 422,
  "timestamp": "2025-10-31T17:11:50.336414",
  "path": "/RestApi/v2/{resource}",
  "operation": "{HTTP_METHOD}",
  "error": {
    "code": "BUSINESS_RULE_VIOLATION",
    "message": "Operation violates business rules.",
    "details": [
      {
        "code": "LIMIT_EXCEEDED",
        "message": "Maximum NPI attributes rows limit is exceeded.",
        "field": "attributeValues",
        "value": {
          "maximumAttributeRowsLimit": 230000,
          "providedAttributeValuesCount": 100000
        }
      }
    ]
  }
}