Cloud API Consumer Guide
PolicyCenter Cloud API Consumer Guide
Basic REST operations
Introduction to Cloud API
List of APIs in Cloud API
Version numbers for major and minor releases
Viewing API definitions
Swagger UI
View definitions using Swagger UI
Information in Swagger UI
The API definition endpoints and Postman
View definitions using Postman
Information in the output of API definition endpoints
The Guidewire API References site
View definitions using the API References site
Information on the API References site
REST API fundamentals
Cloud API calls
Resources
Endpoints
Root resources
Child resources
Methods
Paths
Requests and responses
Testing requests and responses
Tutorial: Set up your Postman environment
GETs
Overview of GETs
Standard payload structures
Viewing schemas
View a response schema in Swagger UI
Sending GETs
Send a GET using Postman
Tutorial: Send a basic Postman request
Payload structure for a basic response
Structure of a basic response
The count property
The data section
The attributes section
The checksum field
The links subsection (for an element)
The collection-level links section
Payload structure for a response with included resources
Tutorial: Send a Postman request with included resources
Structure of a response with included resources
The related section (for a resource)
The included section (for a response)
Including either a collection or a specific resource
Determining which resources can be included
Query parameters
Overview of query parameters
Viewing query parameter definitions
The asOfDate query parameter
The fields query parameter
Tutorial: Send a GET with the fields parameter
The filter query parameter
Endpoints with default filters
Tutorial: Send a GET with the filter parameters
The sort query parameter
Tutorial: Send a GET with the sort query parameter
The pagination query parameters
pageSize limits the number of resources per page
The self link returns a single resource in a page
pageOffset pages through resources
includeTotal retrieves the total number of resources
Tutorial: Send a GET with the pageSize and totalCount parameters
Query parameters for included resources
Syntax for query parameters for included resources
Summary of query parameters for included resources
Specifying query parameters at different levels
Tutorial: Send a GET with query parameters for included resources
Query parameters for POSTs and PATCHes
POSTs
Overview of POSTs
Standardizing payload structures
Viewing request schemas
View a request schema in Swagger UI
Designing a request payload
Request payload structure
Determining the minimum creation criteria
Specifying scalar values
Specifying compound values
Setting values and objects to null
Sending POSTs
Send a POST using Postman
Tutorial: Create a new note that specifies required fields only
Tutorial: Create a new note that specifies optional fields
Responses to a POST
Postman behavior with redirects
Business action POSTs
Improving POST performance
PATCHes
Overview of PATCHes
The PATCH payload structure
Designing a request payload
PATCHes and arrays
Sending PATCHes
Send a PATCH using Postman
Tutorial: PATCH an activity
Responses to a PATCH
PATCHes and lost updates
Postman behavior with redirects
DELETEs
Overview of DELETEs
Tutorial: DELETE a note
DELETEs and lost updates
Request headers
HTTP headers
Overview of Cloud API headers
Send a request with a Cloud API header using Postman
Language and locale
Preventing duplicate database transactions
Sticky sessions in clustered environments
Warming up an endpoint
Handling a call with unknown elements
Validating response payloads against additional constraints
Optimizing calls
Reducing the number of calls
Features that execute multiple requests at once
Comparing features that execute multiple requests
Determining which feature to use
Composite requests
Constructing composite requests
The requests section
Using variables to share information across subrequests
Responses to the subrequests
The selections section
Composite request examples
Composite request limitations
Administering composite requests
Error handling
Logging
Configuring the maximum number of subrequests
Complete composite request syntax
Request and response inclusion
Syntax for simple parent/child relationships
Syntax for named relationships
PATCHes in request inclusion
Additional behaviors with write inclusion
Additional behaviors with read inclusion
Batch requests
Batch request syntax
Optional subrequest attributes
Batch request examples
Simple batch requests
Batch requests with query parameters
Batch requests with request payloads
Batch requests with distinct operations
Administering batch requests
Specifying subrequest headers
Specifying onFail behavior
Configuring the maximum number of subrequests
Lost updates and checksums
Lost updates
Checksums
Checksums for PATCHes and business action POSTs
Tutorial: PATCH an activity using checksums
Tutorial: Assign an activity using checksums
Checksums for DELETEs
Send a checksum in a request header using Postman
Tutorial: DELETE a note using checksums
Asynchronous calls
Overview of asynchronous calls
Determining when the call has been processed
Retrieving the response using /requests/{asyncRequestId}
Retrieving the response from /requests/{asyncRequestId}/response
Sending a request asynchronously
Tutorial: Send a request asynchronously
Retrieving the response to the original request
Response information in the /requests response
Response information using the /response endpoint
Tutorial: Retrieve information about an asynchronous request
Waiting for a response synchronously
Tutorial: Send a request asynchronously with a wait time
Asynchronous request administration
Business flows: Accounts
Creating accounts
Creating an account
The account holder
The primary location
The producer code
Creating an account example payload
Name clearance and account status
Child objects for an account
Creating accounts as an anonymous user
Managing accounts
Querying for accounts
Searching for accounts
Searching for accounts using free-text search
Modifying accounts
Account contacts
Querying for account contacts
Creating account contacts
Modifying account contacts
Linking account contact addresses
Additional behaviors
Account contact addresses
Account contact roles
Account locations
Querying for account locations
Creating account locations
Modifying account locations
Account user role assignment
Account jobs and policies
Managing bound policies
Querying for policies
Searching for policies
Moving policies between accounts
Policy producers
The producer data model
Changing a policy's producer
Policy jobs
Policy contacts
Policy locations
Policy questions
Prior policies
Querying for prior policy information
Creating prior policy information
Updating prior policy information
Loss history
Loss history in PolicyCenter
Loss history in Cloud API
Querying for loss history information
PATCHing policy-level loss history information
Working with loss history entries
Pre-renewal directions
Retrieving pre-renewal directions
Setting pre-renewal directions
Clearing pre-renewal directions
Additional actions for bound policies
Business flows: Job types
Submissions
Initiating a submission
Modifying the submission
Quoting the submission
Completing the submission
Binding and issuing a submission at the same time
Binding a submission without issuing
Issuing a previously bound policy
Withdrawing and rejecting submissions
Copying submissions
Additional features for submissions
Composite request submission example for Personal Auto
Renewals
Overview of policy transaction management
Initiating a renewal
Modifying the renewal
Quoting the renewal
Completing the renewal
Policy changes
Overview of policy transaction management
Initiating a policy change
Modifying the policy change
Quoting the policy change
Completing the policy change
Issues specific to policy changes
Changing producers
Preemptions
Identifying that a job has been preempted
Viewing preemption information
Preemption payload example
Handling preemptions
Example of handling preemptions
Applying changes to a renewal
Cancellations and reinstatements
Overview of policy transaction management
Cancellations
Initiating a cancellation
Modifying and requoting the cancellation
Completing the cancellation
Reinstatements
Initiating a reinstatement
Modifying and quoting the reinstatement
Completing the reinstatement
Rewrite and Rewrite New Account
Overview of policy transaction management
Rewrite transaction
Rewrite new account transaction
Audits
Audit policy endpoints
Audit job endpoints
Business flows: Job policies
Overview of modifying jobs
Lines of business
Overview of lines of business
Lines
Additional LOB-specific endpoints
Contrasting job, policy, product, and line of business
Coverables and coverages
Overview of coverables
Adding coverables
Overview of coverages
Adding coverages
Coverage terms
Scheduled items
Scheduled item endpoints
Resources for scheduled items
Querying for scheduled items
Creating scheduled items
Coverage validation
Blankets
Blanket coverables
Blankets on jobs
Blankets on policies
Modifiers
Product and product line modifiers
Line-level and object-level modifiers
Modifier validation
Questions
Overview of questions
Answering questions
Specifying answers
Question validation
Exposures, exclusions, and conditions
Overview of exposures, exclusions, and conditions
Adding exposures, exclusions, and conditions
Synchronization and deferred validation
Out-of-sync policy data
The /sync endpoints
The /sync-coverages endpoints
The /sync-fields endpoints
The /sync-modifiers endpoints
The /sync-questions endpoints
When to call a /sync endpoint
Deferring validation
The deferValidation query parameter
Authorization to defer validation
Limitations to deferred validation
Default value creation
The createDefaultCoverages query parameter
The createCoveredLocationForPrimaryLocation query parameter
Policy contacts
Overview of policy contacts
Working with all policy contacts on a job
Querying for all policy contacts on a job
Adding a policy contact
Updating and deleting policy contacts
Linking policy contact addresses
Additional behaviors
Policy contact addresses
Primary and secondary named insured contacts
Additional named insured contacts
Querying for additional named insureds
Adding additional named insureds
Updating additional named insureds
LOB-specific additional insured contacts
Location named insureds
Policy locations
Overview of policy locations
Querying for a policy's locations
Creating policy locations
PATCHing policy locations
DELETEing policy locations
Commission overrides
Specify commission overrides
Coinsurance
Policy sections and coinsurance
Query for policy section details
Towers and layers
Query for tower details
Create a tower with layers
Update a tower
Delete a tower
Coinsurance agreements
Query for coinsurance agreement details
Create a coinsurance agreement
Update coinsurance agreements
Delete a coinsurance agreement
Policy foreign exchange rates
Job user role assignment
Overview of job user role assignment
Retrieving job user roles
Assigning job user roles
PATCHing job user roles
Working with product definitions
Product definitions for audit schedule patterns
Product definitions for lines
Product definitions for products
Product definitions for reference code data
PATCHing jobs
Read-only fields
Fields you can modify using PATCH /{jobId}
Fields you can modify using specific endpoints
Business flows: Job support
Affinity groups
Working with affinity groups
Working with affinity group producer codes
Comparing jobs
Comparing a job to its base policy
Structure of the JobReviewDiffs resource
Example of a /review-diffs response
Comparing two jobs on the same policy
Structure of the CompareJobAttributes resource
Example of a /compare-jobs response
Contingencies
Querying for contingencies
Creating contingencies
Closing contingencies
Form patterns
Form patterns information
Form patterns lookups
Form patterns with lookups
Policy and job forms
Job search
Out-of-sequence conflicts
Identifying out-of-sequence conflicts
Resolving out-of-sequence conflicts
Example: Identifying and resolving out-of-sequence conflicts
Policy archiving
Determine whether archiving is enabled
List archived policies
Set policies to Do Not Archive
Retrieve an archived policy
Bulk policy archive retrieval
Policy holds
Working with policy holds
Querying for policy holds
Creating policy holds
Modifying policy holds
Deleting policy holds
Policy hold components
Policy hold rules
Querying for policy hold rules
Adding policy hold rules
Modifying policy hold rules
Deleting policy hold rules
Policy hold geographic zones
Example: Policy hold setup
Create policy hold details
Add rules to the policy hold
Add geographic zones to the policy hold
Quoting
Costs and transactions
Multi-version quoting
Job version properties
Creating a new job version
Selecting a job version
Working with job versions
Rating overrides
Rating overrides in Cloud API
Reinsurance risks
Streamlined account and submission creation
Understanding the Graph API
The Graph API
Graph vs Account and Job APIs
Using Graph API endpoints in a composite request
Order of operations
Adding Ref IDs
Additonal Graph API functionality
Example account and submission creation
Example: Creating a policy using the graph endpoints
Underwriting issues
Underwriting issues in PolicyCenter
Querying for underwriting issues
Creating underwriting issues
Minimum creation criteria
Examples of creating an underwriting issue
Managing underwriting issue approval
Approval underwriting issues
Rejecting underwriting issues
Reopening underwriting issues
Job locks
Locking jobs
Releasing locks
Requesting approval
Requesting approval through Cloud API
Referral reasons
Querying for referral reasons
Creating referral reasons
Closing and reopening referral reasons
Business flows: Framework APIs
Activities
Querying for activities
Creating activities
Assigning activities
Assignment options
Assignment examples
Retrieving recommended assignees
Closing activities
Additional activity functionality
Documents
Overview of documents
Querying for document information
Querying for document metadata
Querying for document content
POSTing documents
POSTing documents using Postman
PATCHing documents
Sending document metadata only using JSON
DELETEing documents
Notes
Querying for notes
Creating account, job, and policy notes
Additional notes functionality
Users and groups
Users
Querying for user information
Creating users
Updating users
Deleting users
Groups
Querying for groups
Creating groups
Assigning users to groups
Updating groups
Deleting groups
Queues
Working with queues
User roles
Querying for user roles
Creating user roles
Updating user roles
Authority profiles
Retrieving information about underwriting authority profiles
Assigning authority profiles to users
Creating authority profiles
Modifying authority profiles
Authority profile grants
Querying for grants
Creating grants
Modifying grants
Producers
Commission plans
Organizations
Querying for organizations
Creating organizations
Updating organizations
Organization contacts
Create an organization contact
Updating organization contacts
Organization contact addresses
Producer codes
Querying for producer codes
Creating producer codes
Updating producer codes
Managing producer codes for users and groups
The UserProducerCode and GroupProducerCode endpoints
Querying for user and group producer codes
Associating producer codes with users and groups
Exposing producer codes to external users
Security zones
Querying for security zones
Creating security zones
Modifying and deleting security zones
Associating security zones with other objects
Geographic zones
History events
PolicyCenter contacts
Querying for contacts
Creating contacts
Updating contacts
Search for contacts
Destroy contact information
Contact addresses
Foreign exchange rates
Querying for exchange rate sets
Creating a foreign exchange rate set
Updating a foreign exchange set
Typelist metadata
The /typelists endpoints
Querying with typekey filters
Tutorial: Query for typelist metadata
Batch processes
Overview of batch processes
Querying for batch process information
Getting information about batch process history
Managing batch processes
Starting a batch process
Starting a batch process with arguments
Stopping a batch process
Database consistency checks
Overview of database consistency checks (DBCCs)
Running DBCCs
Running a previously run DBCC
Querying for DBCC run information
Personal data destruction
API entity destruction overview
System configuration
Obfuscating user data
Destroying a contact
Destroying an account
Destroying a policy
Preventing data destruction
Business entity schemas
Retrieve a business entity schema
Business entity schema query parameters
ETag support
CreateSubmissionAttributes schema
Schema properties
Schema properties overview
Schema properties usage
The Test Util API
Enabling the Test Util API
View the Test Util API in Swagger UI
Test Util API endpoints