You can use the 1099Policy API to cancel insurance coverage for a specific assignment before its start date. When you cancel an assignment, the contractor's coverage for that specific job is terminated. That said, the contractor maintains an active insurance application and continues receiving coverage for all subsequent assignments unless they explicitly opt out as explained in more detail below.
Cancellation process
You can cancel assignments using the assignment API. Cancellation takes effect immediately, but there are some important limitations to keep in mind:
- Assignments can only be cancelled before their start date (contact us if you need additional options)
- Once cancelled, you cannot reactivate the assignment
- After cancellation, you can no longer update the assignment or its metadata
Refund handling
When an assignment is cancelled, the refund process depends on the payment method:
- For credit card payments: The contractor receives an automatic refund if they've already been charged
- For entities remitting payments on behalf of contractor: The entity receives the refund directly
Notifications
We send the following notifications when an assignment is cancelled:
- An email to the contractor notifying them of the cancellation
- A webhook event
assignment.cancelledthat you can use to update your systems
Cancel an assignment
To cancel an assignment, you can pass the job id associated with the assignment to the /assignments/cancel endpoint as detailed below.
curl -X POST "https://api.1099policy.com/v1/assignments/cancel" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"job_id": "jb_123abc",
"reason": "client_request"
}'
Required parameters
| Parameter | Description |
|---|---|
| job_id | The ID of the job associated with the assignment to be cancelled |
Optional parameters
| Parameter | Description |
|---|---|
| reason | A reason for the cancellation (e.g. "client_request", "contractor_request") |
Errors
| Error Code | Description |
|---|---|
| assignment_already_started | The assignment cannot be cancelled because it has already started. |
| invalid_assignment_id | No assignment found for the provided job ID |
| invalid_job_id | The provided job ID is invalid |
Cancellation events
The platform sends events when an assignment's status changes. At minimum, we recommend listening for the assignment.cancelled event.
| Event | Description |
|---|---|
| assignment.cancelled | Sent immediately when you cancel a contractor's assignment |
Updating policy to deactivate an insurance application
As noted, cancelling an assignment only affects coverage for that specific job. The contractor's insurance application remains active and they continue receiving coverage for new assignments unless:
- They explicitly opt out of coverage for specific assignments
- They deactivate their application by setting
policy.is_activetofalse
Note that you can disable automatic, per assignment coverage, at the insurance application level because we create a policy object for every new application the contractor completes. As a result, you can make a PUT request to the policy API as detailed below.
curl -X POST "https://api.1099policy.com/v1/policies/pl_P1mqYWt7cZ" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"is_active": false,
}'
Setting policy.is_active to False does not immediately impact any reported assignments. In other words, the contractor will continue to have coverage for all previously reported assignments. On the other hand, any new reported assignments associated with a policy where is_active is False will automatically be marked as ineligible for coverage.
