Authority profiles

An underwriting issue is an object attached to a policy transaction that indicates some aspect of the transaction requires review and approval by an underwriter. Underwriting issues are created automatically by underwriting rules.

An authority profile is a collection of authority grants that can be associated with one or more users. Each authority grant lists a type of underwriting issue, with an optional condition, that the associated users can approve. For example, a given authority profile could grant the ability to approve the following types of underwriting issues:

  • Producer code changed (issue type with no condition)
  • Claim total incurred is greater than $10,000 (issue type with a "> 10000" condition)

Through Cloud API, you can retrieve information about authority profiles and assign them to users. You can also create, update, and delete them.

Retrieving information about underwriting authority profiles

To retrieve information about underwriting authority profiles, use the following endpoints:

  • GET /admin/v1/uw-authority-profiles
  • GET /admin/v1/uw-authority-profiles/{uwAuthorityProfileId}

For example, the following payload retrieves information about the base configuration underwriting authority profiles. (Checksum and link information has been omitted.)

GET /admin/v1/uw-authority-profiles/

{
    "count": 9,
    "data": [
        {
            "attributes": {
                "description": "Agent 1",
                "displayName": "Agent 1",
                "id": "pc:agent1",
                "name": "Agent 1"
            }
        },
        {
            "attributes": {
                "description": "Agent 2",
                "displayName": "Agent 2",
                "id": "pc:SFWdb3rRQxDA9AyksL1p_",
                "name": "Agent 2"
            }
        },
        {
            "attributes": {
                "description": "External User Profile",
                "displayName": "External User Profile",
                "id": "authorityprofile:extuser",
                "name": "External User Profile"
            },
        },
        {
            "attributes": {
                "description": "Service User Profile",
                "displayName": "Service User Profile",
                "id": "authorityprofile:serviceuser",
                "name": "Service User Profile"
            }
        },
        {
            "attributes": {
                "description": "Unauthenticated User Profile",
                "displayName": "Unauthenticated User Profile",
                "id": "authorityprofile:uauser",
                "name": "Unauthenticated User Profile"
            }
        },
        {
            "attributes": {
                "description": "Underwriter 1",
                "displayName": "Underwriter 1",
                "id": "pc:underwriter1",
                "name": "Underwriter 1"
            }
        },
        {
            "attributes": {
                "description": "Underwriter 2",
                "displayName": "Underwriter 2",
                "id": "pc:underwriter2",
                "name": "Underwriter 2"
            }
        },
        {
            "attributes": {
                "description": "Underwriter Manager",
                "displayName": "Underwriter Manager",
                "id": "pc:SeOY1PmQwKcwQnuWvmCOy",
                "name": "Underwriter Manager"
            }
        },
        {
            "attributes": {
                "description": "internet portal",
                "displayName": "internet portal",
                "id": "pc:SZ6snOkKD_qhPHsqGgGwy",
                "name": "internet portal"
            }
        }
    ]
}

Assigning authority profiles to users

When you create or edit a user, you can specify the user's authority profiles. For example, the following payload creates a user with the following attributes:

  • First name: Devon
  • Last name: Byrne
  • User name: dbyrne
  • Roles: underwriter (underwriter)
  • Authority profiles: Underwriter 1 (pc:underwriter1)
POST /admin/v1/users

{
  "data": {
    "attributes": {
        "firstName": "Devon",
        "lastName": "Byrne",
        "username": "dbyrne",
        "roles": [
            {
                "id": "underwriter"
            }
        ],
        "uwAuthorityProfiles": [
            {
                "id": "pc:underwriter1"
            }
        ]
    }
  }
}

Modifying authority profile assignment

Similar to modifying a user's roles, you can use the PATCH /admin/v1/users/{userId} endpoint to assign or unassign authority profiles to an existing user by modifying the uwAuthorityProfiles array.

Note that, within Cloud API, PATCHing an array does not add the PATCH members to the members already existing in the array. Instead, the PATCH replaces the existing members with the PATCH members. If you want a PATCH to be additive to an array, you must first determine the existing members of the array, and then specify an array in the PATCH with the existing members as well as the ones you wish to add.

For example, suppose you have an existing user named Devon Byrne with an ID of pc:235 and the Underwriter 1 authority profile (pc:underwriter1). You want to add the Underwriter 2 authority profile (pc:underwriter2) to this user. To do so, you must use the following payload. (Note that the payload specifies the existing profile and the new profile.)

PATCH /admin/v1/users/pc:235

{
  "data": {
    "attributes": {
      "uwAuthorityProfiles": [
        {
          "id": "pc:underwriter1"
        },
        {
          "id": "pc:underwriter2"
        }
      ]
    }
  }
}

Creating authority profiles

Use the following endpoint to create an authority profiles:

  • POST /admin/v1/uw-authority-profiles

The only required field is the profile's name.

For example, the following request creates a new profile for underwriters.

POST /admin/v1/uw-authority-profiles

{
  "data": {
    "attributes": {
        "name": "Underwriter 3"
    }
  }
}

Modifying authority profiles

You can use the following endpoints to manage authority profiles:

  • PATCH /admin/uw-authority-profiles/{uwAuthorityProfileId}
  • DELETE /admin/v1/uw-authority-profiles/{uwAuthorityProfileId}

The only field on an authority profile that you can PATCH is the description.

For example, suppose the profile created in the previous example has an id of pc:112. The following request modifies its description.

PATCH /admin/v1/uw-authority-profiles/pc:112

{
  "data": {
    "attributes": {
        "description": "Profile 3 for underwriters"
    }
  }
}

The following request deletes profile pc:112:

DELETE /admin/v1/uw-authority-profiles/pc:112
      
<no request body>