InsuranceNow API authorization
API authorization controls access to endpoints based on the user authentication method and the security groups defined in InsuranceNow. Use API roles and permissions to determine which authenticated users can access specific resources and operations.
Authorization to execute APIs can be based on the authentication method and user authority.
In InsuranceNow, authority refers to the permissions granted to a user or service account
through their assigned API Security Groups. These security groups (such as
AgentPortalGroup, ServicePortalGroup, or
DirectSalesPortalGroup) determine which API endpoints a user can access. A
user's role defines their function within the system—whether they are an agent, portal user,
or administrator—and this role determines which security groups they are assigned to.
Together, the authentication method (how the system verifies identity) and the user's
role-based authorities (which endpoints they can access) control whether an API request is
allowed to proceed. In practice, when a client submits an API request, the server evaluates
the caller's authentication credentials against their assigned
APISecurityGroups to determine whether the request should be allowed.
Authorization from InsuranceNow Swagger API
- Basic authentication
- With this method, the user can submit API calls to the APIs associated with the API groups defined by user's APISecurityGroups authority. In this case, the user is based on the credentials provided to the Basic Authentication option.
- JWT authentication
- With this method, the server allows the client to submit API calls to the APIs
associated with the API groups defined by user's
APISecurityGroups authority. By default, the JWT is created for
the DirectPortal user which has access to APIs provided to the
DirectSalesPortalGroupsecurity group. - OAuth2 authentication
- With this method, the server verifies the user's APISecurityGroups authority setting before executing the API request. In this case, the user is the user that logged into InsuranceNow.
Authorization from Consumer Sales Portals
DirectSalesPortalGroup security group.Authorization from Consumer Service Portals
Consumer Service Portals use JWT client authentication to submit API requests. By default, the Consumer Service Portal accesses the API as the Service Portal web portal user. This role has access to APIs provided to the ServicePortalGroup.
Using ServicePortal role with custom portals
If you have a custom or partner-developed Service Portal that uses Service Portal APIs,
authenticate using the ServicePortal role. This role grants access to the
ServicePortalGroup APIs designed for service portal functionality. (For
custom Consumer Sales or Direct Sales Portals, use the DirectPortal role
instead.)
- Verify that the
ServicePortalrole in the authority-role.xml file includes all four required API Security Groups withValue='Yes'. - Audit your custom portal's code to identify which InsuranceNow API endpoints it calls.
- Ensure those endpoints are included in the API Security Groups assigned to your users' roles in the authority-role.xml file.
-
Review the 2026.2.1 Changes section for APIs that are part of the alternate group. If your custom portal needs access to any of these APIs, ensure that your
ServicePortalrole configuration in the authority-role.xml file includes theAPISecurity-ServicePortalAltGroup. For more information, see API Security Group Endpoint Mapping - old.
If users encounter HTTP 403 (Forbidden) errors when calling API endpoints, the issue might be that their assigned role does not have access to the required API Security Group.
Configuring and assigning the ServicePortal role
For instructions on assigning the ServicePortal role to a user, see Assign a user to a role in the
Application Guide. Additional information about configuring user roles
is also available in Override a user's role permissions in the
Application Guide. To grant a user role access to API endpoints, see
API security groups in InsuranceNow
Authorization from Agent Portals
Agent Portal uses OAuth 2 authentication to submit API requests. The Agent Portal accesses
the APIs as the InsuranceNow agent user that logged into the Agent Portal. By default,
InsuranceNow agent users that access the Agent Portal have access to API provided to the
AgentPortalGroup security group.
Important considerations
ServicePortal
role (such as adding or removing API Security Groups) do not take effect immediately. After
modifying the role configuration in authority-role.xml, you must
redeploy InsuranceNow for changes to take effect. Existing user sessions may continue using
cached permissions until the user logs out and logs back in.API security groups in InsuranceNow
API security groups are authority attributes that control which API endpoints users with specific roles can access in InsuranceNow portal applications.
Overview
API security groups enable fine-grained access control by determining which authenticated users can execute specific API operations. Rather than granting individual endpoint permissions, InsuranceNow assigns security groups to user roles, streamlining authorization administration and enforcing consistent access policies across portal applications.
Each security group contains a set of related API endpoints. When a role includes a security group, users with that role can access all endpoints in that group. This role-to-group mapping is configured in your authority-role.xml file.
Security Motivation
In 2026.2.1, InsuranceNow introduced new security groups to address critical security issues with API authorization. The previous configuration allowed malicious users with valid session tokens to access information beyond their authorized scope. Specifically:
- Modified URLs could be used to gain unauthorized access to insurance agent and provider details.
- Default roles used for portal applications were over-privileged, granting more access than necessary for typical portal operations.
To address these vulnerabilities, two new security groups were introduced: DirectSalesPortalAltGroup and ServicePortalAltGroup. The release also moved sensitive endpoints from the base groups to these new "Alt" groups and removed access to certain endpoints entirely. This change enforces a more restrictive default posture, ensuring that portals have access only to the endpoints they actually need.
For complete information about these security changes, including endpoint reassignments and required actions, see the Core Release Notes.
Least Privilege Principle
The foundation of API security groups is the principle of least privilege: each role should have access only to the API endpoints it actually needs to perform its function. No more, no less.
When configuring roles:
- Review your portal's actual API usage to identify which endpoints it calls.
- Enable only the security groups that contain those endpoints.
- Disable or remove security groups that your portal does not require.
- Regularly audit your role configurations to remove any extraneous authorizations.
By following this principle, you reduce the attack surface: if a user account is compromised, the damage is limited to the specific endpoints and operations they actually need.
Available Security Groups
InsuranceNow provides the following API security groups for portal applications:
| Security Group | Purpose |
|---|---|
APISecurity-ServicePortalGroup |
Base group for Service Portal access. As of 2026.2.1, this group contains no active endpoints. Use ServicePortalAltGroup instead for access to sensitive Service Portal operations. |
APISecurity-ServicePortalAltGroup |
Extended group for Service Portal access. Includes sensitive operations such as billing, payment, document, and claims-related endpoints. Enable this group only if your Service Portal requires these operations. |
APISecurity-DirectSalesPortalGroup |
Base group for Direct Sales Portal access. As of 2026.2.1, this group contains no active endpoints. Use DirectSalesPortalAltGroup instead for access to sensitive Direct Sales Portal operations. |
APISecurity-DirectSalesPortalAltGroup |
Extended group for Direct Sales Portal access. Includes sensitive operations such as application management, driver information, location data, and quote operations. Enable this group only if your Direct Sales Portal requires these operations. |
Endpoint Mapping Reference
Each security group contains a specific set of API endpoints. To determine which group an endpoint belongs to, or to review all endpoints in a group, see InsuranceNow API Endpoint Security Mapping.
This reference topic provides:
- A complete list of endpoints in each security group
- HTTP methods (GET, POST, PATCH, PUT, DELETE) for each endpoint
- Information about endpoints that have been removed or moved in recent releases
Use this reference to identify which groups your portal role must include based on the endpoints your portal calls.
Configuring Role-Based Access
Security groups are enabled or disabled per role in your
authority-role.xml configuration file. Each security group appears as an
AuthorityAttribute entry with a boolean Value
setting:
Value='Yes'— Enables access to the endpoints in this groupValue='No'— Disables access to the endpoints in this group
Example:
<AuthorityAttribute Name="APISecurity-ServicePortalAltGroup" Value="Yes"/>
<AuthorityAttribute Name="APISecurity-DirectSalesPortalAltGroup" Value="No"/>
Use the following steps to configure your role-based access in
authority-role.xml:
- Identify all API endpoints your portal or integration calls.
- Find each endpoint in InsuranceNow API Endpoint Security Mapping to determine its required security group.
- Add the required security group to your role's
AuthorityAttributeelements, settingValue='Yes'. - Remove any security groups not needed for your portal's endpoints, setting
Value='No'or deleting them entirely. - Redeploy InsuranceNow to apply the changes.
- Test your portal to verify all endpoints are accessible.
If your portal receives HTTP 403 (Forbidden) errors after an upgrade, use this process to verify that the appropriate security groups are enabled for your role. Check InsuranceNow API Endpoint Security Mapping to identify which group each endpoint requires.
Troubleshooting HTTP 403 errors
If your portal receives HTTP 403 (Forbidden) errors on API calls after upgrading to 2026.2.1:
- Note the endpoint that returned the error.
- Find the endpoint in this mapping to identify its security group.
- Verify that your role includes that security group in
authority-role.xml. - If the security group is missing, add it and redeploy InsuranceNow.
- Ensure users log out and log back in after redeployment to refresh their permissions.
Best Practices
- Start restrictive: Enable only the groups your portal actually requires. It's easier to add permissions later than to restrict them retroactively.
- Audit regularly: Review your role configurations periodically to ensure groups remain necessary as your portal evolves.
- Document your choices: Maintain a record of why each role has the security groups it does. This helps with troubleshooting and audits.
- Test after changes: When modifying role configurations, redeploy and test your portal thoroughly to ensure all required endpoints work correctly.
- Monitor for 403 errors: HTTP 403 responses indicate missing security group permissions. Check the Release Notes and the endpoint reference to identify which group is needed.
Related Topics
- InsuranceNow API Endpoint Security Mapping — Complete reference of which endpoints belong to each security group
- Core Release Notes — Release notes on 2026.2.1 security changes and required actions
InsuranceNow API endpoint security mapping
This reference lists InsuranceNow API endpoints and their required security groups, helping you configure role-based access control and understand recent changes to endpoint authorization.
Purpose
This reference topic provides a complete mapping of API endpoints to their required security groups. Use this guide to determine which security group(s) your portal role must include to access specific endpoints.
For conceptual information about how security groups function within the role-based access control model, see API security groups in InsuranceNow.
ServicePortalGroup
Current Status (as of 2026.2.1): No active endpoints
In 2026.2.1, all ServicePortalGroup endpoints were either moved to
ServicePortalAltGroup or removed entirely for security reasons. For
information about these changes and their impact, see the Core Release Notes .
ServicePortalAltGroup
Active Endpoints: 13
The following endpoints require the APISecurity-ServicePortalAltGroup security group:
| Endpoint | HTTP Method | Purpose |
|---|---|---|
/applications/{systemId}/paymentSources |
GET |
Document access |
/billingAccounts/{systemId}/acknowledgePayments |
POST |
Billing operation |
/billingAccounts/{systemId}/billingHistories/{billingReference} |
GET |
Billing query |
/billingAccounts/{systemId}/paymentSourceRequest |
POST |
Payment operation |
/claims/{systemId}/contacts |
GET |
Claims data access |
/customers/{systemId}/producers |
GET |
Customer data access |
/customers/{systemId}/documents |
GET |
Document access |
/customers/{systemId}/documents |
POST |
Document upload |
/customers/{systemId}/documents/{documentId} |
GET |
Document retrieval |
/customers/{systemId}/documents/{documentId} |
DELETE |
Document deletion |
/customers/{systemId}/documents/{documentId}/content |
GET |
Document content access |
/policies/{systemId}/paymentSourceRequest |
POST |
Payment operation |
/statementAccounts/paymentPlanList |
GET |
Account query |
DirectSalesPortalGroup
Current Status (as of 2026.2.1): No active endpoints
In 2026.2.1, all DirectSalesPortalGroup endpoints were either moved to DirectSalesPortalAltGroup or removed entirely for security reasons. For information about these changes and their impact, see the Core Release Notes.
DirectSalesPortalAltGroup
Active Endpoints: 60+
The following endpoints require the APISecurity-DirectSalesPortalAltGroup security group:
| Endpoint | HTTP Method |
|---|---|
/addresses/countries |
GET |
/addresses/countries/{isoCd} |
GET |
/addresses/googlePlacesApiKey |
GET |
/addresses/isVerifiedRequest |
POST |
/applications/{systemId} |
DELETE |
/applications/{systemId} |
GET |
/applications/{systemId} |
PATCH |
/applications/{systemId} |
PUT |
/applications/{systemId}/agentChangeRequest |
POST |
/applications/{systemId}/documents |
GET |
/applications/{systemId}/documents/{documentId} |
DELETE |
/applications/{systemId}/documents/{documentId}/content |
GET |
/applications/{systemId}/drivers |
POST |
/applications/{systemId}/drivers |
GET |
/applications/{systemId}/drivers/{driverId}/availableQuestions |
GET |
/applications/{systemId}/drivers/{driverNumber} |
DELETE |
/applications/{systemId}/drivers/{driverNumber} |
GET |
/applications/{systemId}/drivers/{driverNumber} |
PATCH |
/applications/{systemId}/drivers/{driverNumber} |
PUT |
/applications/{systemId}/full |
PATCH |
/applications/{systemId}/lines |
GET |
/applications/{systemId}/lines/{lineCd} |
GET |
/applications/{systemId}/lines/{lineCd} |
PATCH |
/applications/{systemId}/lines/{lineCd} |
PUT |
/applications/{systemId}/lines/{lineCd}/coverages |
GET |
/applications/{systemId}/lines/{lineCd}/coverages/{coverageCd} |
GET |
/applications/{systemId}/lines/{lineCd}/coverages/{coverageCd}/coverageItems |
GET |
/applications/{systemId}/lines/{lineCd}/coverages/{coverageCd}/coverageItems/{sequenceNumber} |
GET |
/applications/{systemId}/lines/{lineCd}/risks |
POST |
/applications/{systemId}/lines/{lineCd}/risks |
GET |
/applications/{systemId}/lines/{lineCd}/risks/{riskNumber} |
DELETE |
/applications/{systemId}/lines/{lineCd}/risks/{riskNumber} |
GET |
/applications/{systemId}/lines/{lineCd}/risks/{riskNumber} |
PATCH |
/applications/{systemId}/lines/{lineCd}/risks/{riskNumber} |
PUT |
/applications/{systemId}/lines/{lineCd}/risks/{riskNumber}/availableQuestions |
GET |
/applications/{systemId}/lines/{lineCd}/risks/{riskNumber}/coverages/{coverageCd} |
GET |
/applications/{systemId}/lines/{lineCd}/risks/{riskNumber}/coverages/{coverageCd}/coverageItems |
GET |
/applications/{systemId}/lines/{lineCd}/risks/{riskNumber}/coverages/{coverageCd}/coverageItems/{sequenceNumber} |
GET |
/applications/{systemId}/linkedQuotes |
GET |
/applications/{systemId}/linkedQuotes/full |
GET |
/applications/{systemId}/locations |
POST |
/applications/{systemId}/locations |
GET |
/applications/{systemId}/locations/{locationNumber} |
DELETE |
/applications/{systemId}/locations/{locationNumber} |
GET |
/applications/{systemId}/locations/{locationNumber} |
PATCH |
/applications/{systemId}/locations/{locationNumber} |
PUT |
/applications/{systemId}/notes |
POST |
/applications/{systemId}/notes |
GET |
/applications/{systemId}/notes/{noteId} |
DELETE |
/applications/{systemId}/notes/{noteId} |
GET |
/applications/full |
POST |
/bankInformation/{routingNumber} |
GET |
/coderefs/{packageKey}/{repositoryKey} |
GET |
/policies/{systemId}/notes/{noteId} |
GET |
/products/{productVersionId}/productSetup |
GET |
/providers |
GET |
/providers/{systemId} |
GET |
/smsevents |
POST |
/vehicleYears |
GET |
Dropped Endpoints
DELETE /claims/{systemId}/documents/{documentId}GET /clients/{clientId}/resourceLink
For more details, see Core Release Notes.
APIManagementGroup security in InsuranceNow
APIManagementGroup grants internal users and service accounts access to administrative APIs for environment setup and data management.
APIManagementGroup grants access to a broad set of internal
management APIs, including endpoints that create or update users, jobs, bank
accounts, providers, and other internal data and configuration. It is intended only
for trusted internal users and automation/service accounts used for environment
setup and test-data seeding. Do not assign this group to customer- or
agent-facing portal roles, because it can unintentionally expose administrative
operations through those portals. If you need additional API access for portals,
work with Guidewire to configure a more appropriate API security group instead
of using APIManagementGroup.