Source Import Failing with 500 Error

I am having an issue with importing a Source into the /sources endpoint. I am succeeding with dozens of other Sources, but this one throws an error.

Here is the error:

{
    "detailCode": "500.0 Internal fault",
    "trackingId": "22ec96ff3d06457983fe0dd1fdc602a5",
    "messages": [
        {
            "locale": "en-US",
            "localeOrigin": "DEFAULT",
            "text": "An internal fault occurred."
        },
        {
            "locale": "und",
            "localeOrigin": "REQUEST",
            "text": "An internal fault occurred."
        }
    ],
    "causes": []
}

And here is the Source. Any help is appreciated!

{
  "name": "ClaimCenter",
  "type": "335d54d0-6ec0-4de7-87a8-1297673fff4a",
  "connectorClass": "",
  "connectorScriptName": "guidewireclaimcenter-saas",
  "connector": "guidewireclaimcenter-saas",
  "description": "Guidewire ClaimCenter",
  "deleteThreshold": 10,
  "healthy": true,
  "authoritative": false,
  "provisionAsCsv": false,
  "owner": {
    "type": "IDENTITY",
    "id": "12345"
  },
  "cluster": {
    "type": "CLUSTER",
    "id": "1234",
    "name": "Cluster 1 - Standard"
  },
  "accountCorrelationRule": null,
  "managerCorrelationRule": null,
  "beforeProvisioningRule": null,
  "features": [
    "PROVISIONING"
  ],
  "schemas": [
    {
      "nativeObjectType": "account",
      "identityAttribute": "id",
      "displayAttribute": "username",
      "hierarchyAttribute": null,
      "includePermissions": false,
      "features": [],
      "configuration": {},
      "attributes": [
        {
          "name": "id",
          "type": "STRING",
          "schema": null,
          "description": "The user's unique identifier",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "username",
          "type": "STRING",
          "schema": null,
          "description": "The user's username",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "firstName",
          "type": "STRING",
          "schema": null,
          "description": "The user's first name",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "lastName",
          "type": "STRING",
          "schema": null,
          "description": "The user's last name",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "suffix",
          "type": "STRING",
          "schema": null,
          "description": "The user's suffix as applicable",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "active",
          "type": "BOOLEAN",
          "schema": null,
          "description": "The user's active status",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "displayName",
          "type": "STRING",
          "schema": null,
          "description": "The user's formatted name",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "employeeNumber",
          "type": "STRING",
          "schema": null,
          "description": "The employee number assigned to the user",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "externalUser",
          "type": "BOOLEAN",
          "schema": null,
          "description": "Indicates if the user is from an organization external to the insurer organization",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "vacationStatus",
          "type": "STRING",
          "schema": null,
          "description": "The user's vacation status",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "workPhoneCountryCode",
          "type": "STRING",
          "schema": null,
          "description": "The user's work phone country code",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "workPhoneNumber",
          "type": "STRING",
          "schema": null,
          "description": "The user's work phone number",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "authorityLimitProfile",
          "type": "STRING",
          "schema": null,
          "description": "The authority limit profile assigned to the user",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "groups",
          "type": "STRING",
          "schema": {
            "type": "CONNECTOR_SCHEMA",
            "name": "group"
          },
          "description": "The group(s) that the user belongs to",
          "isMulti": true,
          "isEntitlement": true,
          "isGroup": true
        },
        {
          "name": "roles",
          "type": "STRING",
          "schema": {
            "type": "CONNECTOR_SCHEMA",
            "name": "role"
          },
          "description": "The role(s) that have been granted to the user",
          "isMulti": true,
          "isEntitlement": true,
          "isGroup": true
        }
      ],
      "name": "account"
    },
    {
      "nativeObjectType": "group",
      "identityAttribute": "id",
      "displayAttribute": "name",
      "hierarchyAttribute": null,
      "includePermissions": false,
      "features": [
        "PROVISIONING"
      ],
      "configuration": {},
      "attributes": [
        {
          "name": "id",
          "type": "STRING",
          "schema": null,
          "description": "The group's unique identifier",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "name",
          "type": "STRING",
          "schema": null,
          "description": "The group's name",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "displayName",
          "type": "STRING",
          "schema": null,
          "description": "The group's formatted name",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "groupType",
          "type": "STRING",
          "schema": null,
          "description": "The group's type",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "parent",
          "type": "STRING",
          "schema": null,
          "description": "The group's parent group",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "securityZone",
          "type": "STRING",
          "schema": null,
          "description": "The group's security zone",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "supervisor",
          "type": "STRING",
          "schema": null,
          "description": "The name of the group supervisor",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        }
      ],
      "name": "group"
    },
    {
      "nativeObjectType": "role",
      "identityAttribute": "id",
      "displayAttribute": "name",
      "hierarchyAttribute": null,
      "includePermissions": false,
      "features": [],
      "configuration": {},
      "attributes": [
        {
          "name": "id",
          "type": "STRING",
          "schema": null,
          "description": "The role's unique identifier",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "name",
          "type": "STRING",
          "schema": null,
          "description": "The role's name",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "displayName",
          "type": "STRING",
          "schema": null,
          "description": "The formatted name of the role",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "description",
          "type": "STRING",
          "schema": null,
          "description": "A detailed description of the role",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        },
        {
          "name": "carrierInternal",
          "type": "BOOLEAN",
          "schema": null,
          "description": "Indicates if the role is applicable to internal carrier organization users",
          "isMulti": false,
          "isEntitlement": false,
          "isGroup": false
        }
      ],
      "name": "role"
    }
  ],
  "connectorAttributes": {
    "healthy": true,
    "healthCheckTimeout": 30,
    "spConnectorSupportsCustomSchemas": true,
    "supportsDeltaAgg": true,
    "idnProxyType": "sp-connect",
    "deltaAggregationEnabled": false,
    "pageSize": "100",
    "connectionType": "direct",
    "client_id": "REMOVED",
    "spConnectorInstanceId": "REMOVED",
    "grant_type": "CLIENT_CREDENTIALS",
    "hasFullAggregationCompleted": true,
    "scope": "REMOVED",
    "host": "REMOVED",
    "token_url": "REMOVED",
    "spConnDebugLoggingEnabled": false,
    "sourceConnected": true,
    "spConnectorSpecId": "REMOVED",
    "deleteThresholdPercentage": 10,
    "templateApplication": "Guidewire ClaimCenter SaaS",
    "oauth_token_info": "",
    "cloudDisplayName": "ClaimCenter",
    "connectorName": "Guidewire ClaimCenter SaaS",
    "authenticationType": "OAuth2"
  },
  "crossTenantConnectorAttributes": {},
  "correlationConfigDetails": {
    "attributeAssignments": [
      {
        "complex": false,
        "property": "networkid",
        "operation": "EQ",
        "value": "username",
        "ignoreCase": true,
        "matchMode": null,
        "filterString": null,
        "sequence": 1
      }
    ],
    "name": "ClaimCenter Account Correlation Config"
  },
  "managerCorrelationMapping": null,
  "provisioningPolicies": [
    {
      "name": "Account",
      "description": null,
      "usageType": "CREATE",
      "fields": [
        {
          "name": "username",
          "transform": {
            "type": "identityAttribute",
            "attributes": {
              "name": "networkid"
            }
          },
          "attributes": {},
          "isRequired": false,
          "type": "string",
          "isMultiValued": false
        },
        {
          "name": "firstName",
          "transform": {
            "type": "identityAttribute",
            "attributes": {
              "name": "firstname"
            }
          },
          "attributes": {},
          "isRequired": false,
          "type": "string",
          "isMultiValued": false
        },
        {
          "name": "lastName",
          "transform": {
            "type": "identityAttribute",
            "attributes": {
              "name": "lastname"
            }
          },
          "attributes": {},
          "isRequired": false,
          "type": "string",
          "isMultiValued": false
        },
        {
          "name": "active",
          "transform": {
            "type": "static",
            "attributes": {
              "value": "true"
            }
          },
          "attributes": {},
          "isRequired": false,
          "type": "boolean",
          "isMultiValued": false
        },
        {
          "name": "employeeNumber",
          "transform": {
            "type": "identityAttribute",
            "attributes": {
              "name": "networkid"
            }
          },
          "attributes": {},
          "isRequired": false,
          "type": "string",
          "isMultiValued": false
        },
        {
          "name": "vacationStatus",
          "transform": {
            "type": "static",
            "attributes": {
              "value": "atwork"
            }
          },
          "attributes": {},
          "isRequired": false,
          "type": "string",
          "isMultiValued": false
        },
        {
          "name": "workPhoneCountryCode",
          "transform": null,
          "attributes": {},
          "isRequired": false,
          "type": "string",
          "isMultiValued": false
        },
        {
          "name": "workPhoneNumber",
          "transform": null,
          "attributes": {},
          "isRequired": false,
          "type": "string",
          "isMultiValued": false
        }
      ]
    }
  ],
  "managementWorkgroup": null,
  "passwordPolicies": null,
  "id": "9f67d1c8c73be6c4c9db612323d33a1b3a3c55"
}

Hi @vic_rinkenberger ,
Can you remove “connectorClass”: “” and id:9f67d1c8c73be6c4c9db612323d33a1b3a3c55 fields from JSON and try once .

Thank you.

I did that, but now I get this error:

{
    "detailCode": "400.1.1 Illegal update attempt",
    "trackingId": "0ff568d56553477686190f70ec49dcfd",
    "messages": [
        {
            "locale": "en-US",
            "localeOrigin": "DEFAULT",
            "text": "Illegal attempt to modify \"id\" field."
        },
        {
            "locale": "und",
            "localeOrigin": "REQUEST",
            "text": "Illegal attempt to modify \"id\" field."
        }
    ],
    "causes": []
}

I think the ID value is required.

@vic_rinkenberger Please note that source id will be generated once source is uploaded via endpoint. So, try without that too. Also, it seems like the current error indicates that you’re trying to modify some id which is not possible (as those are read-only).

Also, can you try to set the id for the owner according to the id of some identity from the SailPoint?

“owner”: {
“type”: “IDENTITY”,
“id”: “actual SailPoint id of some identity in your tenant” }

for cluster as well:

“cluster”: {
“type”: “CLUSTER”,
“id”: “actual SailPoint id of the cluster named “Cluster 1 - Standard“ in your tenant”,
“name”: “Cluster 1 - Standard” }

Sorry, I should have been more clear. I am doing a PUT command against the /sources endpoint (/sources/:id).

Also, I removed the IDs from the Source object before I added it to my original post, just for the sake of privacy. I was importing with real IDs.

My error of “An internal fault occurred” is still the error I’m stuck on.

@vic_rinkenberger In case you haven’t, I’d suggest you to try different API version for this endpoint:

https://sailpoint.api.identitynow.com/v2024/sources/:id

https://sailpoint.api.identitynow.com/v3/sources/:id

If that doesn’t work, I’d say to delete the source and re-create it again via POST request endpoint (make sure to omit the id of the source as it will be generated). If “create” doesn’t work with the same name, try changing the name of the source in the body.

Hi @vic_rinkenberger ,
If you are using PUT request instead of this you can use PATCH request it will help to update source partially.

Thank you.

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.