1099Policy API Reference
1.6.12

The 1099Policy API is based on REST principles with resource-oriented URLs that accept JSON request bodies and return JSON responses. Use the 1099Policy API and the keys available on your 1099Policy Dashboard to offer contractors on your platform access to on-demand, pay-as-you-go insurance.

Use the development environment secret key to step through the process of procuring insurance using 1099Policy API for test contractors and job assignments. Because the API key you use to authenticate determines whether the request runs in our production environment or in our development environment, going live on the 1099Policy platform is as easy as replacing the development secret key with the production secret key once you're ready.

This is the documentation for version 1.6.12 of the API. Last update on Nov 6, 2022.

Base URL
https://api.1099policy.com

Authentication

To use the 1099Policy API you need to authenticate requests using API keys. Sign up for a developer account to view and manage your API keys from the 1099Policy Dashboard. https://dashboard.1099policy.com/signup

Your API tokens should be guarded closely. As a reminder, do not share your secret API keys in publicly accessible areas such as GitHub or client-side code, for example. Instead use environment variables, web server settings, startup script, or a configuration file that is excluded from your version control.

Test mode secret keys have the prefix t9k_test_ and live mode secret keys have the prefix t9k_live_.

All API requests must be made over HTTPS. Calls made over plain HTTP will fail. API requests without authentication will also fail.

  curl \
    -X GET https://api.1099policy.com/api/v1/contractor \
    -H "Authorization: Basic t9k_test_wvnsjtZ8aMlbfGbIm0Lc0"

Environment

Clients can make requests to either the sandbox or production environment by using the header Ten99Policy-Environment and specifying either sandbox or production. The default is sandbox.

  curl \
    -X GET https://api.1099policy.com/api/v1/contractor \
    -H "Authorization: Basic t9k_test_wvnsjtZ8aMlbfGbIm0Lc0" \
    -H "Ten99Policy-Environment: production"

Errors

1099Policy uses conventional HTTP response codes to indicate the success or failure of an API request. In general, codes in the 2xx range indicate success. Codes in the 4xx range indicate an error due to the the information provided (e.g., a required parameter was omitted, a create policy request failed, etc.). Codes in the 5xx range indicate an error with 1099Policy's servers (these are rare).

Some 4xx errors that could be handled programmatically (e.g., contractor ineligible for coverage) include an error code that briefly explains the error reported.

Handling Errors

Our API libraries raise exceptions for many reasons, such as a failed create policy request, invalid parameters, authentication errors, and network unavailability. We recommend writing code that gracefully handles all possible API exceptions.

  200   (OK) Everything worked as expected.
  400   (Bad Request) Check for a missing required parameter.
  401   (Unauthorized) No valid API key provided.
  403   (Forbidden) Confirm API key has permissions to make request.
  404   (Not Found) The requested resource doesn't exist.
  429   (Too Many Requests) Too many requests to the API too quickly.
  500   (Server Error) Something went wrong on 1099Policy's end.

Idempotent Requests

The 1099Policy API checks every request header for an an additional Ten99Policy-Idempotent-Key. We use this field to perform an idempotency check to avoid duplicate transfers in case of network failures or timeouts. For example, if a request to bind a policy fails to return a response due to a network connection error, you can retry the request with the same idempotency key to guarantee that no more than one policy is created.

1099Policy's idempotency works by saving the resulting status code and body of the first request made for any given idempotency key, regardless of whether it succeeded or failed. Subsequent requests with the same key return the same result, including 500 errors.

We suggest using V4 UUIDs, or another random string with enough entropy to avoid collisions.

Keys expire after 24 hours, so a new request is generated if a key is reused outside of that time frame. Results are only saved if an API endpoint started executing. You can safely retry requests that fail validation or conflicts with another request that was executing concurrently.

All POST requests accept idempotency keys. Sending idempotency keys in GET and DELETE requests has no effect and should be avoided, as these requests are idempotent by definition.

  curl \
      -X POST https://api.1099policy.com/api/v1/jobs \
      -u t9k_test_wvnsjtZ8aMlbfGbIm0Lc0: \
      -H "Ten99Policy-Idempotent-Key: d9YozBtG5R" \
      -H 'Content-Type: application/json' \
      -d ...

List all contractors

GET /api/v1/contractors

Returns a list of your contractors. The contractors are
returned sorted by creation date, with the most recent
contractors appearing first.

Body

  • limit integer

    A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.

Responses

  • 200 array[object]

    Returns an array of contractor objects. If no more contractors are available, the resulting array will be empty.

    • address object

      The contractor's home address.

      • country string | null

        2-letter country code.

      • line1 string

        Address line 1 (Street address/PO Box).

      • line2 string | null

        Address line 2 (Apartment/Suite/Unit/Building).

      • locality string

        City/District/Suburb/Town/Village.

      • ZIP or postal code.

      • region string

        2-letter state code.

    • company_name string | null

      The contractor's business name.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • Set of key-value pairs that you can attach to the contractor object. Used for storing additional information in a structured format. Individual keys can be unset by posting an empty value to them. Pass an empty value, e.g. {}, to custom_metadata to unset all keys.

    • email string

      The contractor's email address.

    • The contractor's first name.

    • id string

      Unique identifier for the object.

    • The contractor's last name.

    • middle_name string | null

      The contractor's middle name.

    • phone string

      The contractor's phone number.

GET /api/v1/contractors
curl \
 -X GET https://api.1099policy.com/api/v1/contractors \
 -H "Content-Type: application/json" \
 -d '{"limit":25}'
Request example
{
  "limit": 25
}
Response example (200)
[
  {
    "address": {
      "line1": "150 Wythe Ave",
      "locality": "Brooklyn",
      "postalcode": 11249,
      "region": "NY"
    },
    "company_name": "Mass Repair",
    "created": 1646818364,
    "custom_metadata": {
      "campaign": "Volvo"
    },
    "email": "fmoss@gmail.com",
    "first_name": "Fredrick",
    "id": "cn_Zbe1qTc",
    "last_name": "Moss",
    "phone": "916-579-1243"
  },
  {
    "address": {
      "line1": "1 Kearny St",
      "locality": "San Francisco",
      "postalcode": 94104,
      "region": "CA"
    },
    "company_name": "Acme Co.",
    "created": 1646818384,
    "custom_metadata": {
      "campaign": "Red Bull"
    },
    "email": "parker@gmail.com",
    "first_name": "Joe",
    "id": "cn_Ehb3bYa",
    "last_name": "Parker",
    "phone": "415-474-9088"
  }
]

Create a contractor

POST /api/v1/contractors

Creates a new contractor object.

Body

  • address object Required

    The contractor's home address.

    • country string | null

      2-letter country code.

    • line1 string Required

      Address line 1 (Street address/PO Box).

    • line2 string | null

      Address line 2 (Apartment/Suite/Unit/Building).

    • locality string Required

      City/District/Suburb/Town/Village.

    • postalcode string Required

      ZIP or postal code.

    • region string Required

      2-letter state code.

  • The contractor's business name.

  • Set of key-value pairs that you can attach to an object. Used to store additional information about the contractor in a structured format.

  • email string Required

    The contractor's email address.

  • first_name string Required

    The contractor's first name.

  • last_name string Required

    The contractor's last name.

  • The contractor's middle name.

  • phone string Required

    The contractor's phone number.

  • The contractor's tax identification number. For example, an employer identification number (EIN) if the contractor operates as a corporate entity or a social security number if the contractor operates as a sole proprietor.

Responses

  • 201 object

    Returns the contractor object if the post succeeded.

    • address object

      The contractor's home address.

      • country string | null

        2-letter country code.

      • line1 string

        Address line 1 (Street address/PO Box).

      • line2 string | null

        Address line 2 (Apartment/Suite/Unit/Building).

      • locality string

        City/District/Suburb/Town/Village.

      • ZIP or postal code.

      • region string

        2-letter state code.

    • company_name string | null

      The contractor's business name.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • Set of key-value pairs that you can attach to the contractor object. Used for storing additional information in a structured format. Individual keys can be unset by posting an empty value to them. Pass an empty value, e.g. {}, to custom_metadata to unset all keys.

    • email string

      The contractor's email address.

    • The contractor's first name.

    • id string

      Unique identifier for the object.

    • The contractor's last name.

    • middle_name string | null

      The contractor's middle name.

    • phone string

      The contractor's phone number.

POST /api/v1/contractors
curl \
 -X POST https://api.1099policy.com/api/v1/contractors \
 -H "Content-Type: application/json" \
 -d '{"address":{"line1":"1 Kearny St","locality":"San Francisco","postalcode":94104,"region":"CA"},"company_name":"Acme Co.","custom_metadata":{"campaign":"Red Bull"},"email":"parker@gmail.com","first_name":"Joe","last_name":"Parker","phone":"415-474-9088","tax_identification":"12-3456789"}'
Request example
{
  "address": {
    "line1": "1 Kearny St",
    "locality": "San Francisco",
    "postalcode": 94104,
    "region": "CA"
  },
  "company_name": "Acme Co.",
  "custom_metadata": {
    "campaign": "Red Bull"
  },
  "email": "parker@gmail.com",
  "first_name": "Joe",
  "last_name": "Parker",
  "phone": "415-474-9088",
  "tax_identification": "12-3456789"
}
Response example (201)
{
  "address": {
    "country": "null",
    "line1": "92 Geary St",
    "line2": "null",
    "locality": "San Francisco",
    "postalcode": 94114,
    "region": "CA"
  },
  "company_name": "Acme Co.",
  "created": 1646818364,
  "custom_metadata": {
    "campaign": "Red Bull"
  },
  "email": "parker@gmail.com",
  "first_name": "Joe",
  "id": "cn_Ehb3bYa",
  "last_name": "Parker",
  "middle_name": "null",
  "phone": "415-474-9088"
}

Retrieve a contractor

GET /api/v1/contractors/{contractor_id}

Retrieves the details of an existing contractor.
You need only supply the unique contractor identifier
that was returned upon contractor creation.

Body

  • contractor string Required

    The ID of the desired contractor.

Responses

  • 200 object

    Returns a contractor object if a valid identifier was provided.

    • address object

      The contractor's home address.

      • country string | null

        2-letter country code.

      • line1 string

        Address line 1 (Street address/PO Box).

      • line2 string | null

        Address line 2 (Apartment/Suite/Unit/Building).

      • locality string

        City/District/Suburb/Town/Village.

      • ZIP or postal code.

      • region string

        2-letter state code.

    • company_name string | null

      The contractor's business name.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • Set of key-value pairs that you can attach to the contractor object. Used for storing additional information in a structured format. Individual keys can be unset by posting an empty value to them. Pass an empty value, e.g. {}, to custom_metadata to unset all keys.

    • email string

      The contractor's email address.

    • The contractor's first name.

    • id string

      Unique identifier for the object.

    • The contractor's last name.

    • middle_name string | null

      The contractor's middle name.

    • phone string

      The contractor's phone number.

GET /api/v1/contractors/{contractor_id}
curl \
 -X GET https://api.1099policy.com/api/v1/contractors/{contractor_id} \
 -H "Content-Type: application/json" \
 -d '{"contractor":"cn_Ehb3bYa"}'
Request example
{
  "contractor": "cn_Ehb3bYa"
}
Response example (200)
{
  "address": {
    "country": "null",
    "line1": "92 Geary St",
    "line2": "null",
    "locality": "San Francisco",
    "postalcode": 94114,
    "region": "CA"
  },
  "company_name": "Acme Co.",
  "created": 1646818364,
  "custom_metadata": {
    "campaign": "Red Bull"
  },
  "email": "parker@gmail.com",
  "first_name": "Joe",
  "id": "cn_Ehb3bYa",
  "last_name": "Parker",
  "middle_name": "null",
  "phone": "415-474-9088"
}

Update a contractor

PUT /api/v1/contractors/{contractor_id}

Updates the specified contractor by setting the values
of the parameters passed. Any parameters not provided
will be left unchanged.

This request accepts mostly the same arguments as the
contractor creation call.

Body

  • address object

    The contractor's home address.

    • country string | null

      2-letter country code.

    • line1 string

      Address line 1 (Street address/PO Box).

    • line2 string | null

      Address line 2 (Apartment/Suite/Unit/Building).

    • locality string

      City/District/Suburb/Town/Village.

    • ZIP or postal code.

    • region string

      2-letter state code.

  • company_name string | null

    The contractor's business name.

  • created integer(int64)

    Time at which the object was created. Measured in seconds since the Unix epoch.

  • Set of key-value pairs that you can attach to the contractor object. Used for storing additional information in a structured format. Individual keys can be unset by posting an empty value to them. Pass an empty value, e.g. {}, to custom_metadata to unset all keys.

  • email string

    The contractor's email address.

  • The contractor's first name.

  • id string

    Unique identifier for the object.

  • The contractor's last name.

  • middle_name string | null

    The contractor's middle name.

  • phone string

    The contractor's phone number.

Responses

  • 200 object

    Returns the contractor object if the update succeeded. Returns an error if update parameters are invalid.

    • address object

      The contractor's home address.

      • country string | null

        2-letter country code.

      • line1 string

        Address line 1 (Street address/PO Box).

      • line2 string | null

        Address line 2 (Apartment/Suite/Unit/Building).

      • locality string

        City/District/Suburb/Town/Village.

      • ZIP or postal code.

      • region string

        2-letter state code.

    • company_name string | null

      The contractor's business name.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • Set of key-value pairs that you can attach to the contractor object. Used for storing additional information in a structured format. Individual keys can be unset by posting an empty value to them. Pass an empty value, e.g. {}, to custom_metadata to unset all keys.

    • email string

      The contractor's email address.

    • The contractor's first name.

    • id string

      Unique identifier for the object.

    • The contractor's last name.

    • middle_name string | null

      The contractor's middle name.

    • phone string

      The contractor's phone number.

PUT /api/v1/contractors/{contractor_id}
curl \
 -X PUT https://api.1099policy.com/api/v1/contractors/{contractor_id} \
 -H "Content-Type: application/json" \
 -d '{"address":{"line1":"1 Kearny St","locality":"San Francisco","postalcode":94104,"region":"CA"},"company_name":"Acme Co.","custom_metadata":{"campaign":"Red Bull"},"email":"parker@gmail.com","first_name":"Joe","last_name":"Parker","phone":"415-474-9088","tax_identification":"12-3456789"}'
Request example
{
  "address": {
    "line1": "1 Kearny St",
    "locality": "San Francisco",
    "postalcode": 94104,
    "region": "CA"
  },
  "company_name": "Acme Co.",
  "custom_metadata": {
    "campaign": "Red Bull"
  },
  "email": "parker@gmail.com",
  "first_name": "Joe",
  "last_name": "Parker",
  "phone": "415-474-9088",
  "tax_identification": "12-3456789"
}
Response example (200)
{
  "address": {
    "country": "null",
    "line1": "92 Geary St",
    "line2": "null",
    "locality": "San Francisco",
    "postalcode": 94114,
    "region": "CA"
  },
  "company_name": "Acme Co.",
  "created": 1646818364,
  "custom_metadata": {
    "campaign": "Red Bull"
  },
  "email": "parker@gmail.com",
  "first_name": "Joe",
  "id": "cn_Ehb3bYa",
  "last_name": "Parker",
  "middle_name": "null",
  "phone": "415-474-9088"
}

Delete a contractor

DELETE /api/v1/contractors/{contractor_id}

Permanently deletes a contractor. It cannot be undone.
Also immediately cancels any active policies connected
with the contractor.

Body

  • contractor string Required

    The ID of the contractor to be deleted.

Responses

  • 200 object

    Returns an object with a deleted parameter on success. If the contractor ID does not exist, this call returns an error.

DELETE /api/v1/contractors/{contractor_id}
curl \
 -X DELETE https://api.1099policy.com/api/v1/contractors/{contractor_id} \
 -H "Content-Type: application/json" \
 -d '{"contractor":"cn_Ehb3bYa"}'
Request example
{
  "contractor": "cn_Ehb3bYa"
}
Response example (200)
{
  "deleted": true,
  "deleted_at": "(now)",
  "id": "cn_Ehb3bYa",
  "object": "contractor"
}

List all entities

GET /api/v1/entities

Returns a list of your contracting entities. The entities
are returned sorted by creation date, with the most recent
entities appearing first.

Body

  • limit integer

    A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.

Responses

  • 200 array[object]

    Returns an array of entity objects. If no more entities are available, the resulting array will be empty. Returns an error if the entity ID is invalid.

    • address object

      The contracting entity's address.

      • country string | null

        2-letter country code.

      • line1 string

        Address line 1 (Street address/PO Box).

      • line2 string | null

        Address line 2 (Apartment/Suite/Unit/Building).

      • locality string

        City/District/Suburb/Town/Village.

      • ZIP or postal code.

      • region string

        2-letter state code.

      • aggregate_limit integer Required

        The total amount the insurance company will pay for multiple claims over the course of one policy term.

        A positive integer representing the aggregate limit expressed in cents (e.g., 100000000 cents to represent $1,000,000). The minimum amount is 1000 cents US.

      • occurrence_limit integer Required

        The total amount the insurance company will pay per incident during the policy term.

        A positive integer representing the per occurrence limit expressed in cents (e.g., 100000000 cents to represent $1,000,000). The minimum amount is 1000 cents US.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • id string

      Unique identifier for the object.

    • name string

      The contracting entity's legal name.

    • required_coverage array[string]

      An array of coverage types that can include one or more of the following insurance coverage values: general, professional and workers-comp.

      Values are general, professional, or workers-comp.

GET /api/v1/entities
curl \
 -X GET https://api.1099policy.com/api/v1/entities \
 -H "Content-Type: application/json" \
 -d '{"limit":25}'
Request example
{
  "limit": 25
}
Response example (200)
[
  {
    "address": {
      "line1": "One Apple Park Way",
      "locality": "Cupertino",
      "postalcode": 95014,
      "region": "CA"
    },
    "coverage_limit": {
      "aggregate_limit": 200000000,
      "occurrence_limit": 100000000
    },
    "created": 1646818364,
    "id": "en_Ah3tqYn",
    "name": "Apple, Inc",
    "required_coverage": [
      "general",
      "workers-comp"
    ]
  },
  {
    "address": {
      "line1": "410 Terry Ave N",
      "locality": "Seattle",
      "postalcode": 98109,
      "region": "WA"
    },
    "coverage_limit": {
      "aggregate_limit": 500000000,
      "occurrence_limit": 100000000
    },
    "created": 1646818386,
    "id": "en_Mg5sqSp",
    "name": "Amazon, Inc",
    "required_coverage": [
      "general",
      "professional"
    ]
  }
]

Create an entity

POST /api/v1/entities

Creates a new contracting entity object.

Body

  • address object

    The contracting entity's address.

    • country string | null

      2-letter country code.

    • line1 string

      Address line 1 (Street address/PO Box).

    • line2 string | null

      Address line 2 (Apartment/Suite/Unit/Building).

    • locality string

      City/District/Suburb/Town/Village.

    • ZIP or postal code.

    • region string

      2-letter state code.

  • The contracting entity's minimum required coverage limits.

    • aggregate_limit integer Required

      The total amount the insurance company will pay for multiple claims over the course of one policy term.

      A positive integer representing the aggregate limit expressed in cents (e.g., 100000000 cents to represent $1,000,000). The minimum amount is 1000 cents US.

    • occurrence_limit integer Required

      The total amount the insurance company will pay per incident during the policy term.

      A positive integer representing the per occurrence limit expressed in cents (e.g., 100000000 cents to represent $1,000,000). The minimum amount is 1000 cents US.

  • name string Required

    The contracting entity's legal name.

  • The insurance coverage that the contracting entity requires of the independent contractor.

    • coverage_type array[string] Required

      An array of coverage types that can include one or more of the following insurance coverage values: general, professional and workers-comp.

      Values are general, professional, or workers-comp.

Responses

  • 201 object

    Returns the entity object if the post succeeded.

    • address object

      The contracting entity's address.

      • country string | null

        2-letter country code.

      • line1 string

        Address line 1 (Street address/PO Box).

      • line2 string | null

        Address line 2 (Apartment/Suite/Unit/Building).

      • locality string

        City/District/Suburb/Town/Village.

      • ZIP or postal code.

      • region string

        2-letter state code.

      • aggregate_limit integer Required

        The total amount the insurance company will pay for multiple claims over the course of one policy term.

        A positive integer representing the aggregate limit expressed in cents (e.g., 100000000 cents to represent $1,000,000). The minimum amount is 1000 cents US.

      • occurrence_limit integer Required

        The total amount the insurance company will pay per incident during the policy term.

        A positive integer representing the per occurrence limit expressed in cents (e.g., 100000000 cents to represent $1,000,000). The minimum amount is 1000 cents US.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • id string

      Unique identifier for the object.

    • name string

      The contracting entity's legal name.

    • required_coverage array[string]

      An array of coverage types that can include one or more of the following insurance coverage values: general, professional and workers-comp.

      Values are general, professional, or workers-comp.

POST /api/v1/entities
curl \
 -X POST https://api.1099policy.com/api/v1/entities \
 -H "Content-Type: application/json" \
 -d '{"address":{"line1":"One Apple Park Way","locality":"Cupertino","postalcode":95014,"region":"CA"},"coverage_limit":{"aggregate_limit":200000000,"occurrence_limit":100000000},"name":"Apple, Inc","required_coverage":["general","workers-comp"]}'
Request example
{
  "address": {
    "line1": "One Apple Park Way",
    "locality": "Cupertino",
    "postalcode": 95014,
    "region": "CA"
  },
  "coverage_limit": {
    "aggregate_limit": 200000000,
    "occurrence_limit": 100000000
  },
  "name": "Apple, Inc",
  "required_coverage": [
    "general",
    "workers-comp"
  ]
}
Response example (201)
{
  "address": {
    "line1": "One Apple Park Way",
    "locality": "Cupertino",
    "postalcode": 95014,
    "region": "CA"
  },
  "coverage_limit": {
    "aggregate_limit": 200000000,
    "occurrence_limit": 100000000
  },
  "name": "Apple, Inc",
  "required_coverage": [
    "general",
    "workers-comp"
  ],
  "id": "en_Ah3tqYn",
  "created": 1646818386
}

Retrieve an entity

GET /api/v1/entities/{entity_id}

Retrieves the details of an existing entity.
You need only supply the unique entity ID
that was returned upon entity creation.

Body

  • entity string Required

    The ID of the desired entity.

Responses

  • 200 object

    Returns an entity object if a valid entity ID was provided. Returns an error otherwise.

    • address object

      The contracting entity's address.

      • country string | null

        2-letter country code.

      • line1 string

        Address line 1 (Street address/PO Box).

      • line2 string | null

        Address line 2 (Apartment/Suite/Unit/Building).

      • locality string

        City/District/Suburb/Town/Village.

      • ZIP or postal code.

      • region string

        2-letter state code.

      • aggregate_limit integer Required

        The total amount the insurance company will pay for multiple claims over the course of one policy term.

        A positive integer representing the aggregate limit expressed in cents (e.g., 100000000 cents to represent $1,000,000). The minimum amount is 1000 cents US.

      • occurrence_limit integer Required

        The total amount the insurance company will pay per incident during the policy term.

        A positive integer representing the per occurrence limit expressed in cents (e.g., 100000000 cents to represent $1,000,000). The minimum amount is 1000 cents US.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • id string

      Unique identifier for the object.

    • name string

      The contracting entity's legal name.

    • required_coverage array[string]

      An array of coverage types that can include one or more of the following insurance coverage values: general, professional and workers-comp.

      Values are general, professional, or workers-comp.

GET /api/v1/entities/{entity_id}
curl \
 -X GET https://api.1099policy.com/api/v1/entities/{entity_id} \
 -H "Content-Type: application/json" \
 -d '{"entity":"en_Ah3tqYn"}'
Request example
{
  "entity": "en_Ah3tqYn"
}
Response example (200)
{
  "address": {
    "country": "null",
    "line1": "92 Geary St",
    "line2": "null",
    "locality": "San Francisco",
    "postalcode": 94114,
    "region": "CA"
  },
  "coverage_limit": {
    "aggregate_limit": 200000000,
    "occurrence_limit": 100000000
  },
  "created": 1646818364,
  "id": "en_Ah3tqYn",
  "name": "Apple, Inc",
  "required_coverage": [
    "general",
    "workers-comp"
  ]
}

Update an entity

PUT /api/v1/entities/{entity_id}

Updates the specified entity by setting the values
of the parameters passed. Any parameters not provided
will be left unchanged.

This request accepts mostly the same arguments as the
eneity creation call.

Body

  • address object

    The contracting entity's address.

    • country string | null

      2-letter country code.

    • line1 string

      Address line 1 (Street address/PO Box).

    • line2 string | null

      Address line 2 (Apartment/Suite/Unit/Building).

    • locality string

      City/District/Suburb/Town/Village.

    • ZIP or postal code.

    • region string

      2-letter state code.

    • aggregate_limit integer Required

      The total amount the insurance company will pay for multiple claims over the course of one policy term.

      A positive integer representing the aggregate limit expressed in cents (e.g., 100000000 cents to represent $1,000,000). The minimum amount is 1000 cents US.

    • occurrence_limit integer Required

      The total amount the insurance company will pay per incident during the policy term.

      A positive integer representing the per occurrence limit expressed in cents (e.g., 100000000 cents to represent $1,000,000). The minimum amount is 1000 cents US.

  • created integer(int64)

    Time at which the object was created. Measured in seconds since the Unix epoch.

  • id string

    Unique identifier for the object.

  • name string

    The contracting entity's legal name.

  • required_coverage array[string]

    An array of coverage types that can include one or more of the following insurance coverage values: general, professional and workers-comp.

    Values are general, professional, or workers-comp.

Responses

  • 200 object

    Returns the entity object if the update succeeded. Returns an error if update parameters are invalid.

    • address object

      The contracting entity's address.

      • country string | null

        2-letter country code.

      • line1 string

        Address line 1 (Street address/PO Box).

      • line2 string | null

        Address line 2 (Apartment/Suite/Unit/Building).

      • locality string

        City/District/Suburb/Town/Village.

      • ZIP or postal code.

      • region string

        2-letter state code.

      • aggregate_limit integer Required

        The total amount the insurance company will pay for multiple claims over the course of one policy term.

        A positive integer representing the aggregate limit expressed in cents (e.g., 100000000 cents to represent $1,000,000). The minimum amount is 1000 cents US.

      • occurrence_limit integer Required

        The total amount the insurance company will pay per incident during the policy term.

        A positive integer representing the per occurrence limit expressed in cents (e.g., 100000000 cents to represent $1,000,000). The minimum amount is 1000 cents US.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • id string

      Unique identifier for the object.

    • name string

      The contracting entity's legal name.

    • required_coverage array[string]

      An array of coverage types that can include one or more of the following insurance coverage values: general, professional and workers-comp.

      Values are general, professional, or workers-comp.

PUT /api/v1/entities/{entity_id}
curl \
 -X PUT https://api.1099policy.com/api/v1/entities/{entity_id} \
 -H "Content-Type: application/json" \
 -d '{"address":{"line1":"One Apple Park Way","locality":"Cupertino","postalcode":95014,"region":"CA"},"coverage_limit":{"aggregate_limit":200000000,"occurrence_limit":100000000},"name":"Apple, Inc","required_coverage":["general","workers-comp"]}'
Request example
{
  "address": {
    "line1": "One Apple Park Way",
    "locality": "Cupertino",
    "postalcode": 95014,
    "region": "CA"
  },
  "coverage_limit": {
    "aggregate_limit": 200000000,
    "occurrence_limit": 100000000
  },
  "name": "Apple, Inc",
  "required_coverage": [
    "general",
    "workers-comp"
  ]
}
Response example (200)
{
  "address": {
    "line1": "One Apple Park Way",
    "locality": "Cupertino",
    "postalcode": 95014,
    "region": "CA"
  },
  "coverage_limit": {
    "aggregate_limit": 200000000,
    "occurrence_limit": 100000000
  },
  "name": "Apple, Inc",
  "required_coverage": [
    "general",
    "workers-comp"
  ]
}

Delete an entity

DELETE /api/v1/entities/{entity_id}

Permanently deletes an entity. It cannot be undone.
Also immediately cancels any insurance policies
connected with active jobs managed by the entity.

Body

  • entity string Required

    The ID of the desired entity.

Responses

  • 200 object

    A successfully deleted entity. Otherwise, this call returns an error, such as if the entity has already been deleted.

DELETE /api/v1/entities/{entity_id}
curl \
 -X DELETE https://api.1099policy.com/api/v1/entities/{entity_id} \
 -H "Content-Type: application/json" \
 -d '{"entity":"en_Ah3tqYn"}'
Request example
{
  "entity": "en_Ah3tqYn"
}
Response example (200)
{
  "deleted": true,
  "deleted_at": "(now)",
  "id": "en_Ah3tqYn",
  "object": "entity"
}

List all jobs

GET /api/v1/jobs

Returns a list of your jobs. The jobs are returned
sorted by creation date, with the most recently created
jobs appearing first.

Body

  • limit integer

    A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.

Responses

  • 200 array[object]

    Returns an array of job objects. If no more jobs are available, the resulting array will be empty.

    • address object

      The job address where the work will be done. Exclude if job will be done remotely.

      • country string | null

        2-letter country code.

      • line1 string

        Address line 1 (Street address/PO Box).

      • line2 string | null

        Address line 2 (Apartment/Suite/Unit/Building).

      • locality string

        City/District/Suburb/Town/Village.

      • ZIP or postal code.

      • region string

        2-letter state code.

    • The category code that 1099Policy creates for a group of similarly classified jobs.

      Job category codes are pre-approved by 1099Policy so you can offer contractors insurance to new jobs on your platform in real time.

      To generate pre-approved category codes for a group of similarly classified jobs visit the 1099Policy Dashboard.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • A description of the job that includes the role, responsibilities and necessary qualifications.

    • entity string

      The entity ID for whom the work is being done.

    • id string

      Unique identifier for the object.

    • name string

      The name of the contractor job role.

    • wage integer

      A positive integer representing the total wage (e.g., 1500 cents is $15.00). The minimum wage amount is 100 cents US. The maximum wage amount is 100000000 cents US ($1,000,000).

      Minimum value is 100, maximum value is 100000000.

    • One of flatfee, hourly, unit or blended.

      Values are flatfee, hourly, unit, or blended.

    • The number of years of experience required to be eligible for the job.

GET /api/v1/jobs
curl \
 -X GET https://api.1099policy.com/api/v1/jobs \
 -H "Content-Type: application/json" \
 -d '{"limit":25}'
Request example
{
  "limit": 25
}
Response example (200)
[
  {
    "category_code": "jc_MTqpkbkp6G",
    "created": 1646818364,
    "description": "BMW engine diagnostics and troubleshooting.",
    "entity": "en_C9Z2DmfHSF",
    "id": "jb_jsb9KEcTpc",
    "name": "Mechanic technician",
    "wage": 1500,
    "wage_type": "flatfee",
    "years_experience": 5
  }
]

Create a job

POST /api/v1/jobs

Creates a new job object. Used to classify
the work that 1099Policy applies to insure the
contractor.

Body

  • address object

    The job address where the work will be done. Exclude if job will be done remotely.

    • country string | null

      2-letter country code.

    • line1 string

      Address line 1 (Street address/PO Box).

    • line2 string | null

      Address line 2 (Apartment/Suite/Unit/Building).

    • locality string

      City/District/Suburb/Town/Village.

    • postalcode string Required

      ZIP or postal code.

    • region string Required

      2-letter state code.

  • category_code string Required

    The category code that 1099Policy creates for a group of similarly classified jobs.

    Job category codes are pre-approved by 1099Policy so you can offer contractors insurance to new jobs on your platform in real time.

    To generate pre-approved category codes for a group of similarly classified jobs visit the 1099Policy Dashboard.

  • description string Required

    A description of the job that includes the role, responsibilities and necessary qualifications.

  • entity string Required

    The ID of an existing entity for whom the job is being done.

  • name string Required

    The name of the contractor job role.

  • wage integer Required

    A positive integer representing the wage (e.g., 1500 cents is $15.00). The minimum wage amount is $1.00 US.

    Minimum value is 100.

  • wage_type string Required

    One of flatfee, hourly, unit or blended.

    Values are flatfee, hourly, unit, or blended.

  • The number of years of experience required to be eligible for the job.

Responses

  • 201 object

    Returns the job object if the post succeeded.

    • address object

      The job address where the work will be done. Exclude if job will be done remotely.

      • country string | null

        2-letter country code.

      • line1 string

        Address line 1 (Street address/PO Box).

      • line2 string | null

        Address line 2 (Apartment/Suite/Unit/Building).

      • locality string

        City/District/Suburb/Town/Village.

      • ZIP or postal code.

      • region string

        2-letter state code.

    • The category code that 1099Policy creates for a group of similarly classified jobs.

      Job category codes are pre-approved by 1099Policy so you can offer contractors insurance to new jobs on your platform in real time.

      To generate pre-approved category codes for a group of similarly classified jobs visit the 1099Policy Dashboard.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • A description of the job that includes the role, responsibilities and necessary qualifications.

    • entity string

      The entity ID for whom the work is being done.

    • id string

      Unique identifier for the object.

    • name string

      The name of the contractor job role.

    • wage integer

      A positive integer representing the total wage (e.g., 1500 cents is $15.00). The minimum wage amount is 100 cents US. The maximum wage amount is 100000000 cents US ($1,000,000).

      Minimum value is 100, maximum value is 100000000.

    • One of flatfee, hourly, unit or blended.

      Values are flatfee, hourly, unit, or blended.

    • The number of years of experience required to be eligible for the job.

POST /api/v1/jobs
curl \
 -X POST https://api.1099policy.com/api/v1/jobs \
 -H "Content-Type: application/json" \
 -d '{"category_code":"jc_MTqpkbkp6G","description":"Install fiber optic cable from back to the front of the store.","entity":"en_Ah3tqYn","name":"Field technician","wage":15000,"wage_type":"flatfee","years_experience":10}'
Request example
{
  "category_code": "jc_MTqpkbkp6G",
  "description": "Install fiber optic cable from back to the front of the store.",
  "entity": "en_Ah3tqYn",
  "name": "Field technician",
  "wage": 15000,
  "wage_type": "flatfee",
  "years_experience": 10
}
Response example (201)
{
  "category_code": "jc_MTqpkbkp6G",
  "description": "Install fiber optic cable from back to the front of the store.",
  "entity": "en_Ah3tqYn",
  "name": "Field technician",
  "wage": 15000,
  "wage_type": "flatfee",
  "years_experience": 10,
  "id": "jb_jsb9KEcTpc",
  "created": 1646818386
}

Retrieve a job

GET /api/v1/jobs/{job_id}

Retrieves the details of an existing job.
Supply the unique job ID from either a job
creation request or the job list, and 1099Policy
will return the corresponding job information.

Body

  • job string Required

    The ID of the desired job.

Responses

  • 200 object

    Returns a job object if a valid job ID was provided. Returns an error otherwise.

    • address object

      The job address where the work will be done. Exclude if job will be done remotely.

      • country string | null

        2-letter country code.

      • line1 string

        Address line 1 (Street address/PO Box).

      • line2 string | null

        Address line 2 (Apartment/Suite/Unit/Building).

      • locality string

        City/District/Suburb/Town/Village.

      • ZIP or postal code.

      • region string

        2-letter state code.

    • The category code that 1099Policy creates for a group of similarly classified jobs.

      Job category codes are pre-approved by 1099Policy so you can offer contractors insurance to new jobs on your platform in real time.

      To generate pre-approved category codes for a group of similarly classified jobs visit the 1099Policy Dashboard.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • A description of the job that includes the role, responsibilities and necessary qualifications.

    • entity string

      The entity ID for whom the work is being done.

    • id string

      Unique identifier for the object.

    • name string

      The name of the contractor job role.

    • wage integer

      A positive integer representing the total wage (e.g., 1500 cents is $15.00). The minimum wage amount is 100 cents US. The maximum wage amount is 100000000 cents US ($1,000,000).

      Minimum value is 100, maximum value is 100000000.

    • One of flatfee, hourly, unit or blended.

      Values are flatfee, hourly, unit, or blended.

    • The number of years of experience required to be eligible for the job.

GET /api/v1/jobs/{job_id}
curl \
 -X GET https://api.1099policy.com/api/v1/jobs/{job_id} \
 -H "Content-Type: application/json" \
 -d '{"job":"jb_jsb9KEcTpc"}'
Request example
{
  "job": "jb_jsb9KEcTpc"
}
Response example (200)
{
  "category_code": "jc_MTqpkbkp6G",
  "description": "Install fiber optic cable from back to the front of the store.",
  "entity": "en_Ah3tqYn",
  "name": "Field technician",
  "wage": 15000,
  "wage_type": "flatfee",
  "years_experience": 10,
  "id": "jb_jsb9KEcTpc"
}

Update a job

PUT /api/v1/jobs/{job_id}

Updates the specific job by setting the values of the
parameters passed. Any parameters not provided will be
left unchanged.

Body

  • address object

    The job address where the work will be done. Exclude if job will be done remotely.

    • country string | null

      2-letter country code.

    • line1 string

      Address line 1 (Street address/PO Box).

    • line2 string | null

      Address line 2 (Apartment/Suite/Unit/Building).

    • locality string

      City/District/Suburb/Town/Village.

    • ZIP or postal code.

    • region string

      2-letter state code.

  • The category code that 1099Policy creates for a group of similarly classified jobs.

    Job category codes are pre-approved by 1099Policy so you can offer contractors insurance to new jobs on your platform in real time.

    To generate pre-approved category codes for a group of similarly classified jobs visit the 1099Policy Dashboard.

  • created integer(int64)

    Time at which the object was created. Measured in seconds since the Unix epoch.

  • A description of the job that includes the role, responsibilities and necessary qualifications.

  • entity string

    The entity ID for whom the work is being done.

  • id string

    Unique identifier for the object.

  • name string

    The name of the contractor job role.

  • wage integer

    A positive integer representing the total wage (e.g., 1500 cents is $15.00). The minimum wage amount is 100 cents US. The maximum wage amount is 100000000 cents US ($1,000,000).

    Minimum value is 100, maximum value is 100000000.

  • One of flatfee, hourly, unit or blended.

    Values are flatfee, hourly, unit, or blended.

  • The number of years of experience required to be eligible for the job.

Responses

  • 200 object

    Returns an job object if a valid job ID was provided. Returns an error otherwise.

    • address object

      The job address where the work will be done. Exclude if job will be done remotely.

      • country string | null

        2-letter country code.

      • line1 string

        Address line 1 (Street address/PO Box).

      • line2 string | null

        Address line 2 (Apartment/Suite/Unit/Building).

      • locality string

        City/District/Suburb/Town/Village.

      • ZIP or postal code.

      • region string

        2-letter state code.

    • The category code that 1099Policy creates for a group of similarly classified jobs.

      Job category codes are pre-approved by 1099Policy so you can offer contractors insurance to new jobs on your platform in real time.

      To generate pre-approved category codes for a group of similarly classified jobs visit the 1099Policy Dashboard.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • A description of the job that includes the role, responsibilities and necessary qualifications.

    • entity string

      The entity ID for whom the work is being done.

    • id string

      Unique identifier for the object.

    • name string

      The name of the contractor job role.

    • wage integer

      A positive integer representing the total wage (e.g., 1500 cents is $15.00). The minimum wage amount is 100 cents US. The maximum wage amount is 100000000 cents US ($1,000,000).

      Minimum value is 100, maximum value is 100000000.

    • One of flatfee, hourly, unit or blended.

      Values are flatfee, hourly, unit, or blended.

    • The number of years of experience required to be eligible for the job.

PUT /api/v1/jobs/{job_id}
curl \
 -X PUT https://api.1099policy.com/api/v1/jobs/{job_id} \
 -H "Content-Type: application/json" \
 -d '{"category_code":"jc_MTqpkbkp6G","description":"Install fiber optic cable from back to the front of the store.","entity":"en_Ah3tqYn","name":"Field technician","wage":15000,"wage_type":"flatfee","years_experience":10}'
Request example
{
  "category_code": "jc_MTqpkbkp6G",
  "description": "Install fiber optic cable from back to the front of the store.",
  "entity": "en_Ah3tqYn",
  "name": "Field technician",
  "wage": 15000,
  "wage_type": "flatfee",
  "years_experience": 10
}
Response example (200)
{
  "category_code": "jc_MTqpkbkp6G",
  "description": "Install fiber optic cable from back to the front of the store.",
  "entity": "en_Ah3tqYn",
  "name": "Field technician",
  "wage": 15000,
  "wage_type": "flatfee",
  "years_experience": 10,
  "id": "jb_jsb9KEcTpc"
}

Delete a job

DELETE /api/v1/jobs/{job_id}

Delete a job. Deleting a job is only possible if it
has no insurance policies associated with it.

Body

  • job string

    The ID of the job to delete.

Responses

  • 200 object

    Returns an object with a deleted parameter on success. Otherwise, this call returns an error.

DELETE /api/v1/jobs/{job_id}
curl \
 -X DELETE https://api.1099policy.com/api/v1/jobs/{job_id} \
 -H "Content-Type: application/json" \
 -d '{"job":"jb_jsb9KEcTpc"}'
Request example
{
  "job": "jb_jsb9KEcTpc"
}
Response example (200)
{
  "deleted": true,
  "deleted_at": "(now)",
  "id": "jb_jsb9KEcTpc",
  "object": "job"
}

List all quotes

GET /api/v1/quotes

Returns a list of quotes you’ve previously created.
The quotes are returned in sorted order, with the most
recent quotes appearing first.

Body

  • limit integer

    A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.

Responses

  • 200 array[object]

    Returns an array of quote objects. If no more quotes are available, the resulting array will be empty.

    • A Contractor object represents the contractors that can accept one or more jobs on your platform. The API allows you to create, delete, and update contractors. You can retrieve individual contractors as well as a list of all contractors.

      • address object

        The contractor's home address.

        • country string | null

          2-letter country code.

        • line1 string

          Address line 1 (Street address/PO Box).

        • line2 string | null

          Address line 2 (Apartment/Suite/Unit/Building).

        • locality string

          City/District/Suburb/Town/Village.

        • ZIP or postal code.

        • region string

          2-letter state code.

      • company_name string | null

        The contractor's business name.

      • created integer(int64)

        Time at which the object was created. Measured in seconds since the Unix epoch.

      • Set of key-value pairs that you can attach to the contractor object. Used for storing additional information in a structured format. Individual keys can be unset by posting an empty value to them. Pass an empty value, e.g. {}, to custom_metadata to unset all keys.

      • email string

        The contractor's email address.

      • The contractor's first name.

      • id string

        Unique identifier for the object.

      • The contractor's last name.

      • middle_name string | null

        The contractor's middle name.

      • phone string

        The contractor's phone number.

      • coverage_type array[string] Required

        An array of coverage types that can include one or more of the following insurance coverage values: general, professional and workers-comp.

        Values are general, professional, or workers-comp.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • effective_date string(int64)

      The date when the insurance coverage is set to take effect. Measured in seconds since the Unix epoch. This date must be set in the future. The default effective_date is the next day.

    • eligible boolean

      Indicates whether a contractor is elgible for insurance or not.

      Default value is true.

    • end_date string(int64)

      The date when the insurance coverage is set to expire. Measured in seconds since the Unix epoch. This date must be after the effective date. The default end_date is 30 days after the effective date.

    • id string

      Unique identifier for the object.

    • job object

      Store representations of the jobs on your platform in Job objects. The Job is used to, among other things, ensure that the insurance coverage that the 1099Policy platform issues correctly maps to the work that contractors will do.

      • address object

        The job address where the work will be done. Exclude if job will be done remotely.

        • country string | null

          2-letter country code.

        • line1 string

          Address line 1 (Street address/PO Box).

        • line2 string | null

          Address line 2 (Apartment/Suite/Unit/Building).

        • locality string

          City/District/Suburb/Town/Village.

        • ZIP or postal code.

        • region string

          2-letter state code.

      • The category code that 1099Policy creates for a group of similarly classified jobs.

        Job category codes are pre-approved by 1099Policy so you can offer contractors insurance to new jobs on your platform in real time.

        To generate pre-approved category codes for a group of similarly classified jobs visit the 1099Policy Dashboard.

      • created integer(int64)

        Time at which the object was created. Measured in seconds since the Unix epoch.

      • A description of the job that includes the role, responsibilities and necessary qualifications.

      • entity string

        The entity ID for whom the work is being done.

      • id string

        Unique identifier for the object.

      • name string

        The name of the contractor job role.

      • wage integer

        A positive integer representing the total wage (e.g., 1500 cents is $15.00). The minimum wage amount is 100 cents US. The maximum wage amount is 100000000 cents US ($1,000,000).

        Minimum value is 100, maximum value is 100000000.

      • One of flatfee, hourly, unit or blended.

        Values are flatfee, hourly, unit, or blended.

      • The number of years of experience required to be eligible for the job.

    • net_rate integer

      The amount of money the 1099 contractor pays in premium per every $100 earned.

      A positive integer representing the premium owed per $100 earned. The net_rate is stored in cents (e.g., 48 represents $0.48).

GET /api/v1/quotes
curl \
 -X GET https://api.1099policy.com/api/v1/quotes \
 -H "Content-Type: application/json" \
 -d '{"limit":25}'
Request example
{
  "limit": 25
}
Response example (200)
[
  {
    "contractor": "cn_Ehb3bYa",
    "coverage_type": [
      "general",
      "workers-comp"
    ],
    "created": 1646818364,
    "eligible": true,
    "id": "qt_5DciVga8Kt",
    "job": "jb_jsb9KEcTpc",
    "net_rate": 65
  }
]

Create a quote

POST /api/v1/quotes

To provide insurance coverage to contractors on your platform, you
first create a Quote object. If you use your test API keys,
everything will occur as if in production but the policy that's
generated will be a test policy.

Body

  • contractor string Required

    The ID of the contractor seeking a quote for insurance coverage.

  • coverage_type array[string] Required

    An array of coverage types that can include one or more of the following insurance coverage values: general, professional and workers-comp.

    Values are general, professional, or workers-comp.

  • effective_date integer(int64)

    The date when the insurance coverage is set to take effect. Measured in seconds since the Unix epoch. This date must be set in the future. The default effective_date is the next day.

  • end_date integer(int64)

    The date when the insurance coverage is set to expire. Measured in seconds since the Unix epoch. This date must be after the effective date. The default end_date is 30 days after the effective date.

  • job string Required

    The ID of the job assignment that the contractor will be working on.

Responses

  • 201 object

    Returns the quote object if the post succeeded.

    • A Contractor object represents the contractors that can accept one or more jobs on your platform. The API allows you to create, delete, and update contractors. You can retrieve individual contractors as well as a list of all contractors.

      • address object

        The contractor's home address.

        • country string | null

          2-letter country code.

        • line1 string

          Address line 1 (Street address/PO Box).

        • line2 string | null

          Address line 2 (Apartment/Suite/Unit/Building).

        • locality string

          City/District/Suburb/Town/Village.

        • ZIP or postal code.

        • region string

          2-letter state code.

      • company_name string | null

        The contractor's business name.

      • created integer(int64)

        Time at which the object was created. Measured in seconds since the Unix epoch.

      • Set of key-value pairs that you can attach to the contractor object. Used for storing additional information in a structured format. Individual keys can be unset by posting an empty value to them. Pass an empty value, e.g. {}, to custom_metadata to unset all keys.

      • email string

        The contractor's email address.

      • The contractor's first name.

      • id string

        Unique identifier for the object.

      • The contractor's last name.

      • middle_name string | null

        The contractor's middle name.

      • phone string

        The contractor's phone number.

      • coverage_type array[string] Required

        An array of coverage types that can include one or more of the following insurance coverage values: general, professional and workers-comp.

        Values are general, professional, or workers-comp.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • effective_date string(int64)

      The date when the insurance coverage is set to take effect. Measured in seconds since the Unix epoch. This date must be set in the future. The default effective_date is the next day.

    • eligible boolean

      Indicates whether a contractor is elgible for insurance or not.

      Default value is true.

    • end_date string(int64)

      The date when the insurance coverage is set to expire. Measured in seconds since the Unix epoch. This date must be after the effective date. The default end_date is 30 days after the effective date.

    • id string

      Unique identifier for the object.

    • job object

      Store representations of the jobs on your platform in Job objects. The Job is used to, among other things, ensure that the insurance coverage that the 1099Policy platform issues correctly maps to the work that contractors will do.

      • address object

        The job address where the work will be done. Exclude if job will be done remotely.

        • country string | null

          2-letter country code.

        • line1 string

          Address line 1 (Street address/PO Box).

        • line2 string | null

          Address line 2 (Apartment/Suite/Unit/Building).

        • locality string

          City/District/Suburb/Town/Village.

        • ZIP or postal code.

        • region string

          2-letter state code.

      • The category code that 1099Policy creates for a group of similarly classified jobs.

        Job category codes are pre-approved by 1099Policy so you can offer contractors insurance to new jobs on your platform in real time.

        To generate pre-approved category codes for a group of similarly classified jobs visit the 1099Policy Dashboard.

      • created integer(int64)

        Time at which the object was created. Measured in seconds since the Unix epoch.

      • A description of the job that includes the role, responsibilities and necessary qualifications.

      • entity string

        The entity ID for whom the work is being done.

      • id string

        Unique identifier for the object.

      • name string

        The name of the contractor job role.

      • wage integer

        A positive integer representing the total wage (e.g., 1500 cents is $15.00). The minimum wage amount is 100 cents US. The maximum wage amount is 100000000 cents US ($1,000,000).

        Minimum value is 100, maximum value is 100000000.

      • One of flatfee, hourly, unit or blended.

        Values are flatfee, hourly, unit, or blended.

      • The number of years of experience required to be eligible for the job.

    • net_rate integer

      The amount of money the 1099 contractor pays in premium per every $100 earned.

      A positive integer representing the premium owed per $100 earned. The net_rate is stored in cents (e.g., 48 represents $0.48).

POST /api/v1/quotes
curl \
 -X POST https://api.1099policy.com/api/v1/quotes \
 -H "Content-Type: application/json" \
 -d '{"contractor":"cn_Ehb3bYa","coverage_type":["general","workers-comp"],"job":"jb_jsb9KEcTpc"}'
Request example
{
  "contractor": "cn_Ehb3bYa",
  "coverage_type": [
    "general",
    "workers-comp"
  ],
  "job": "jb_jsb9KEcTpc"
}
Response example (201)
{
  "contractor": "cn_Ehb3bYa",
  "coverage_type": [
    "general",
    "workers-comp"
  ],
  "job": "jb_jsb9KEcTpc",
  "id": "qt_5DciVga8Kt",
  "created": 1646818386,
  "net_rate": 65,
  "eligible": true
}

Retrieve a quote

GET /api/v1/quotes/{quote_id}

Retrieves the details of a previously created quote. Supply the
unique quote ID that was returned from your previous request,
and 1099Policy will return the corresponding quote information.

Body

  • quote string Required

    The identifier of the quote to be retrieved.

Responses

  • 200 object

    Returns a quote object if a valid identifier was provided.

    • A Contractor object represents the contractors that can accept one or more jobs on your platform. The API allows you to create, delete, and update contractors. You can retrieve individual contractors as well as a list of all contractors.

      • address object

        The contractor's home address.

        • country string | null

          2-letter country code.

        • line1 string

          Address line 1 (Street address/PO Box).

        • line2 string | null

          Address line 2 (Apartment/Suite/Unit/Building).

        • locality string

          City/District/Suburb/Town/Village.

        • ZIP or postal code.

        • region string

          2-letter state code.

      • company_name string | null

        The contractor's business name.

      • created integer(int64)

        Time at which the object was created. Measured in seconds since the Unix epoch.

      • Set of key-value pairs that you can attach to the contractor object. Used for storing additional information in a structured format. Individual keys can be unset by posting an empty value to them. Pass an empty value, e.g. {}, to custom_metadata to unset all keys.

      • email string

        The contractor's email address.

      • The contractor's first name.

      • id string

        Unique identifier for the object.

      • The contractor's last name.

      • middle_name string | null

        The contractor's middle name.

      • phone string

        The contractor's phone number.

      • coverage_type array[string] Required

        An array of coverage types that can include one or more of the following insurance coverage values: general, professional and workers-comp.

        Values are general, professional, or workers-comp.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • effective_date string(int64)

      The date when the insurance coverage is set to take effect. Measured in seconds since the Unix epoch. This date must be set in the future. The default effective_date is the next day.

    • eligible boolean

      Indicates whether a contractor is elgible for insurance or not.

      Default value is true.

    • end_date string(int64)

      The date when the insurance coverage is set to expire. Measured in seconds since the Unix epoch. This date must be after the effective date. The default end_date is 30 days after the effective date.

    • id string

      Unique identifier for the object.

    • job object

      Store representations of the jobs on your platform in Job objects. The Job is used to, among other things, ensure that the insurance coverage that the 1099Policy platform issues correctly maps to the work that contractors will do.

      • address object

        The job address where the work will be done. Exclude if job will be done remotely.

        • country string | null

          2-letter country code.

        • line1 string

          Address line 1 (Street address/PO Box).

        • line2 string | null

          Address line 2 (Apartment/Suite/Unit/Building).

        • locality string

          City/District/Suburb/Town/Village.

        • ZIP or postal code.

        • region string

          2-letter state code.

      • The category code that 1099Policy creates for a group of similarly classified jobs.

        Job category codes are pre-approved by 1099Policy so you can offer contractors insurance to new jobs on your platform in real time.

        To generate pre-approved category codes for a group of similarly classified jobs visit the 1099Policy Dashboard.

      • created integer(int64)

        Time at which the object was created. Measured in seconds since the Unix epoch.

      • A description of the job that includes the role, responsibilities and necessary qualifications.

      • entity string

        The entity ID for whom the work is being done.

      • id string

        Unique identifier for the object.

      • name string

        The name of the contractor job role.

      • wage integer

        A positive integer representing the total wage (e.g., 1500 cents is $15.00). The minimum wage amount is 100 cents US. The maximum wage amount is 100000000 cents US ($1,000,000).

        Minimum value is 100, maximum value is 100000000.

      • One of flatfee, hourly, unit or blended.

        Values are flatfee, hourly, unit, or blended.

      • The number of years of experience required to be eligible for the job.

    • net_rate integer

      The amount of money the 1099 contractor pays in premium per every $100 earned.

      A positive integer representing the premium owed per $100 earned. The net_rate is stored in cents (e.g., 48 represents $0.48).

GET /api/v1/quotes/{quote_id}
curl \
 -X GET https://api.1099policy.com/api/v1/quotes/{quote_id} \
 -H "Content-Type: application/json" \
 -d '{"quote":"qt_5DciVga8Kt"}'
Request example
{
  "quote": "qt_5DciVga8Kt"
}
Response example (200)
{
  "contractor": "cn_Ehb3bYa",
  "coverage_type": [
    "general",
    "workers-comp"
  ],
  "job": "jb_jsb9KEcTpc",
  "id": "qt_5DciVga8Kt",
  "created": 1646818386,
  "net_rate": 65
}

Update a quote

PUT /api/v1/quotes/{quote_id}

Quotes that aren't bound to an issued policy are fully editable.
Once a policy is issued for a quote, the quote becomes uneditable.

Body

  • A Contractor object represents the contractors that can accept one or more jobs on your platform. The API allows you to create, delete, and update contractors. You can retrieve individual contractors as well as a list of all contractors.

    • address object

      The contractor's home address.

      • country string | null

        2-letter country code.

      • line1 string

        Address line 1 (Street address/PO Box).

      • line2 string | null

        Address line 2 (Apartment/Suite/Unit/Building).

      • locality string

        City/District/Suburb/Town/Village.

      • ZIP or postal code.

      • region string

        2-letter state code.

    • company_name string | null

      The contractor's business name.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • Set of key-value pairs that you can attach to the contractor object. Used for storing additional information in a structured format. Individual keys can be unset by posting an empty value to them. Pass an empty value, e.g. {}, to custom_metadata to unset all keys.

    • email string

      The contractor's email address.

    • The contractor's first name.

    • id string

      Unique identifier for the object.

    • The contractor's last name.

    • middle_name string | null

      The contractor's middle name.

    • phone string

      The contractor's phone number.

    • coverage_type array[string] Required

      An array of coverage types that can include one or more of the following insurance coverage values: general, professional and workers-comp.

      Values are general, professional, or workers-comp.

  • created integer(int64)

    Time at which the object was created. Measured in seconds since the Unix epoch.

  • effective_date string(int64)

    The date when the insurance coverage is set to take effect. Measured in seconds since the Unix epoch. This date must be set in the future. The default effective_date is the next day.

  • eligible boolean

    Indicates whether a contractor is elgible for insurance or not.

    Default value is true.

  • end_date string(int64)

    The date when the insurance coverage is set to expire. Measured in seconds since the Unix epoch. This date must be after the effective date. The default end_date is 30 days after the effective date.

  • id string

    Unique identifier for the object.

  • job object

    Store representations of the jobs on your platform in Job objects. The Job is used to, among other things, ensure that the insurance coverage that the 1099Policy platform issues correctly maps to the work that contractors will do.

    • address object

      The job address where the work will be done. Exclude if job will be done remotely.

      • country string | null

        2-letter country code.

      • line1 string

        Address line 1 (Street address/PO Box).

      • line2 string | null

        Address line 2 (Apartment/Suite/Unit/Building).

      • locality string

        City/District/Suburb/Town/Village.

      • ZIP or postal code.

      • region string

        2-letter state code.

    • The category code that 1099Policy creates for a group of similarly classified jobs.

      Job category codes are pre-approved by 1099Policy so you can offer contractors insurance to new jobs on your platform in real time.

      To generate pre-approved category codes for a group of similarly classified jobs visit the 1099Policy Dashboard.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • A description of the job that includes the role, responsibilities and necessary qualifications.

    • entity string

      The entity ID for whom the work is being done.

    • id string

      Unique identifier for the object.

    • name string

      The name of the contractor job role.

    • wage integer

      A positive integer representing the total wage (e.g., 1500 cents is $15.00). The minimum wage amount is 100 cents US. The maximum wage amount is 100000000 cents US ($1,000,000).

      Minimum value is 100, maximum value is 100000000.

    • One of flatfee, hourly, unit or blended.

      Values are flatfee, hourly, unit, or blended.

    • The number of years of experience required to be eligible for the job.

  • net_rate integer

    The amount of money the 1099 contractor pays in premium per every $100 earned.

    A positive integer representing the premium owed per $100 earned. The net_rate is stored in cents (e.g., 48 represents $0.48).

Responses

  • 200 object

    Returns the quote object if the update succeeded. Returns an error if update parameters are invalid.

    • A Contractor object represents the contractors that can accept one or more jobs on your platform. The API allows you to create, delete, and update contractors. You can retrieve individual contractors as well as a list of all contractors.

      • address object

        The contractor's home address.

        • country string | null

          2-letter country code.

        • line1 string

          Address line 1 (Street address/PO Box).

        • line2 string | null

          Address line 2 (Apartment/Suite/Unit/Building).

        • locality string

          City/District/Suburb/Town/Village.

        • ZIP or postal code.

        • region string

          2-letter state code.

      • company_name string | null

        The contractor's business name.

      • created integer(int64)

        Time at which the object was created. Measured in seconds since the Unix epoch.

      • Set of key-value pairs that you can attach to the contractor object. Used for storing additional information in a structured format. Individual keys can be unset by posting an empty value to them. Pass an empty value, e.g. {}, to custom_metadata to unset all keys.

      • email string

        The contractor's email address.

      • The contractor's first name.

      • id string

        Unique identifier for the object.

      • The contractor's last name.

      • middle_name string | null

        The contractor's middle name.

      • phone string

        The contractor's phone number.

      • coverage_type array[string] Required

        An array of coverage types that can include one or more of the following insurance coverage values: general, professional and workers-comp.

        Values are general, professional, or workers-comp.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • effective_date string(int64)

      The date when the insurance coverage is set to take effect. Measured in seconds since the Unix epoch. This date must be set in the future. The default effective_date is the next day.

    • eligible boolean

      Indicates whether a contractor is elgible for insurance or not.

      Default value is true.

    • end_date string(int64)

      The date when the insurance coverage is set to expire. Measured in seconds since the Unix epoch. This date must be after the effective date. The default end_date is 30 days after the effective date.

    • id string

      Unique identifier for the object.

    • job object

      Store representations of the jobs on your platform in Job objects. The Job is used to, among other things, ensure that the insurance coverage that the 1099Policy platform issues correctly maps to the work that contractors will do.

      • address object

        The job address where the work will be done. Exclude if job will be done remotely.

        • country string | null

          2-letter country code.

        • line1 string

          Address line 1 (Street address/PO Box).

        • line2 string | null

          Address line 2 (Apartment/Suite/Unit/Building).

        • locality string

          City/District/Suburb/Town/Village.

        • ZIP or postal code.

        • region string

          2-letter state code.

      • The category code that 1099Policy creates for a group of similarly classified jobs.

        Job category codes are pre-approved by 1099Policy so you can offer contractors insurance to new jobs on your platform in real time.

        To generate pre-approved category codes for a group of similarly classified jobs visit the 1099Policy Dashboard.

      • created integer(int64)

        Time at which the object was created. Measured in seconds since the Unix epoch.

      • A description of the job that includes the role, responsibilities and necessary qualifications.

      • entity string

        The entity ID for whom the work is being done.

      • id string

        Unique identifier for the object.

      • name string

        The name of the contractor job role.

      • wage integer

        A positive integer representing the total wage (e.g., 1500 cents is $15.00). The minimum wage amount is 100 cents US. The maximum wage amount is 100000000 cents US ($1,000,000).

        Minimum value is 100, maximum value is 100000000.

      • One of flatfee, hourly, unit or blended.

        Values are flatfee, hourly, unit, or blended.

      • The number of years of experience required to be eligible for the job.

    • net_rate integer

      The amount of money the 1099 contractor pays in premium per every $100 earned.

      A positive integer representing the premium owed per $100 earned. The net_rate is stored in cents (e.g., 48 represents $0.48).

PUT /api/v1/quotes/{quote_id}
curl \
 -X PUT https://api.1099policy.com/api/v1/quotes/{quote_id} \
 -H "Content-Type: application/json" \
 -d '{"contractor":"cn_Ehb3bYa","coverage_type":["general","workers-comp"],"job":"jb_jsb9KEcTpc"}'
Request example
{
  "contractor": "cn_Ehb3bYa",
  "coverage_type": [
    "general",
    "workers-comp"
  ],
  "job": "jb_jsb9KEcTpc"
}
Response example (200)
{
  "contractor": {
    "address": {
      "country": "null",
      "line1": "92 Geary St",
      "line2": "null",
      "locality": "San Francisco",
      "postalcode": 94114,
      "region": "CA"
    },
    "company_name": "Acme Co.",
    "created": 1646818364,
    "custom_metadata": {
      "campaign": "Red Bull"
    },
    "email": "parker@gmail.com",
    "first_name": "Joe",
    "id": "cn_Ehb3bYa",
    "last_name": "Parker",
    "middle_name": "null",
    "phone": "415-474-9088"
  },
  "coverage_type": {
    "coverage_type": [
      "general",
      "workers-comp"
    ]
  },
  "created": 1646818364,
  "effective_date": 1646818364,
  "eligible": true,
  "end_date": 1678334737,
  "id": "qt_5DciVga8Kt",
  "job": {
    "address": {
      "country": "null",
      "line1": "92 Geary St",
      "line2": "null",
      "locality": "San Francisco",
      "postalcode": 94114,
      "region": "CA"
    },
    "category_code": "jc_MTqpkbkp6G",
    "created": 1646818364,
    "description": "Install fiber optic cable from back to the front of the store.",
    "entity": "en_Ah3tqYn",
    "id": "jb_jsb9KEcTpc",
    "name": "Field technician",
    "wage": 15000,
    "wage_type": "flatfee",
    "years_experience": 10
  },
  "net_rate": 42
}

List all sessions

GET /api/v1/apply/sessions

Returns a list of insurance application Sessions.

Body

  • limit integer

    A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.

Responses

  • 200 array[object]

    Returns an array of session objects. If no more sessions are available, the resulting array will be empty.

    • The URL the contractor will be directed to if they are ineligible or decide to abandon the insurance application and return to your website.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • id string

      Unique identifier for the object.

    • quote string

      The ID of the quote associated with the insurance application session.

    • The URL to which 1099Policy should direct independent contractors when a contractor successfully procures insurance coverage.

    • url string

      The URL to the insurance application Session. Redirect customers to this URL to take them to their insurance application. The domain will use apply.1099policy.com.

GET /api/v1/apply/sessions
curl \
 -X GET https://api.1099policy.com/api/v1/apply/sessions \
 -H "Content-Type: application/json" \
 -d '{"limit":25}'
Request example
{
  "limit": 25
}
Response example (200)
[
  {
    "cancel_url": "https://1099jobcloud.com/1099policy/cancel",
    "created": 1646818364,
    "id": "ias_01FZCHXE7KNQHE1T3S8AXG2QZE",
    "quote": "qt_5DciVga8Kt",
    "success_url": "https://1099jobcloud.com/1099policy/success",
    "url": "http://apply.1099policy.com?..."
  }
]

Create a session

POST /api/v1/apply/sessions

Creates a session object.

Body

  • The URL the contractor will be directed to if they are ineligible or decide to abandon the insurance application and return to your website.

  • quote string Required

    The ID of an existing quote to be associated with the insurance application session.

  • The URL to which 1099Policy should direct independent contractors when a contractor successfully procures insurance coverage.

Responses

  • 201 object

    Returns the session object for an insurance application if quote, job, and contractor are valid.

    • The URL the contractor will be directed to if they are ineligible or decide to abandon the insurance application and return to your website.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • id string

      Unique identifier for the object.

    • quote string

      The ID of the quote associated with the insurance application session.

    • The URL to which 1099Policy should direct independent contractors when a contractor successfully procures insurance coverage.

    • url string

      The URL to the insurance application Session. Redirect customers to this URL to take them to their insurance application. The domain will use apply.1099policy.com.

POST /api/v1/apply/sessions
curl \
 -X POST https://api.1099policy.com/api/v1/apply/sessions \
 -H "Content-Type: application/json" \
 -d '{"cancel_url":"https://1099jobcloud.com/1099policy/cancel","quote":"qt_5DciVga8Kt","success_url":"https://1099jobcloud.com/1099policy/success"}'
Request example
{
  "cancel_url": "https://1099jobcloud.com/1099policy/cancel",
  "quote": "qt_5DciVga8Kt",
  "success_url": "https://1099jobcloud.com/1099policy/success"
}
Response example (201)
{
  "cancel_url": "https://1099jobcloud.com/1099policy/cancel",
  "quote": "qt_5DciVga8Kt",
  "success_url": "https://1099jobcloud.com/1099policy/success",
  "id": "ias_01FVCHXE7PNQHA1T3S2AXL2QZE",
  "created": 1646818386,
  "url": "http://apply.1099policy.com?..."
}

Retrieve a session

GET /api/v1/apply/sessions/{session_id}

Retrieves the insurance application session with the given ID.

Body

  • session string Required

    The ID of the desired session.

Responses

  • 200 object

    Returns a session object if a valid session ID was provided. Returns an error otherwise.

    • The URL the contractor will be directed to if they are ineligible or decide to abandon the insurance application and return to your website.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • id string

      Unique identifier for the object.

    • quote string

      The ID of the quote associated with the insurance application session.

    • The URL to which 1099Policy should direct independent contractors when a contractor successfully procures insurance coverage.

    • url string

      The URL to the insurance application Session. Redirect customers to this URL to take them to their insurance application. The domain will use apply.1099policy.com.

GET /api/v1/apply/sessions/{session_id}
curl \
 -X GET https://api.1099policy.com/api/v1/apply/sessions/{session_id} \
 -H "Content-Type: application/json" \
 -d '{"session":"ias_01FVCHXE7PNQHA1T3S2AXL2QZE"}'
Request example
{
  "session": "ias_01FVCHXE7PNQHA1T3S2AXL2QZE"
}
Response example (200)
{
  "cancel_url": "https://1099jobcloud.com/1099policy/cancel",
  "quote": "qt_5DciVga8Kt",
  "success_url": "https://1099jobcloud.com/1099policy/success",
  "id": "ias_01FVCHXE7PNQHA1T3S2AXL2QZE",
  "created": 1646818386,
  "url": "http://apply.1099policy.com?..."
}

List all policies

GET /api/v1/policies

Returns a list of policies you’ve previously created.
The policies are returned in sorted order, with the most
recent policies appearing first.

Body

  • limit integer

    A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.

Responses

  • 200 array[object]

    An array of policies, up to limit. Each entry in the array is a separate policy object. If no more charges are available, the resulting array will be empty.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • effective_date integer(int64)

      A timestamp used to determine the insurance policy start date. Measured in seconds since the Unix epoch. The default effective_date is the next day.

    • expiration_date integer(int64)

      A timestemp used to determine the insurance policy end date. Measured in seconds since the Unix epoch. The default expiration_date is 30 days after the effective_date.

    • id string

      Unique identifier for the object.

    • pdf_url string

      A URL for the hosted insurnace policy PDF, which contractors can view.

    • quote string

      The ID of the quote used to create the policy.

    • One of active, cancelled, or expired.

      Values are active, cancelled, or expired.

GET /api/v1/policies
curl \
 -X GET https://api.1099policy.com/api/v1/policies \
 -H "Content-Type: application/json" \
 -d '{"limit":25}'
Request example
{
  "limit": 25
}
Response example (200)
[
  {
    "created": 1646818364,
    "effective_date": 1646818364,
    "expiration_date": 1678334737,
    "id": "pl_WzFRszJhoY",
    "pdf_url": "http://ten99policy.s3.amazonaws.com/1099policy-coi-sample.pdf",
    "quote": "qt_5DciVga8Kt",
    "status": "active"
  }
]

Create a policy

POST /api/v1/policies

Creates a new policy object.

Body

  • A timestamp used to determine the insurance policy start date.

  • A timestemp used to determine the insurance policy end date.

  • quote string Required

    The ID of the quote used to create the policy.

Responses

  • 201 object

    Returns the policy object if the post succeeded.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • effective_date integer(int64)

      A timestamp used to determine the insurance policy start date. Measured in seconds since the Unix epoch. The default effective_date is the next day.

    • expiration_date integer(int64)

      A timestemp used to determine the insurance policy end date. Measured in seconds since the Unix epoch. The default expiration_date is 30 days after the effective_date.

    • id string

      Unique identifier for the object.

    • pdf_url string

      A URL for the hosted insurnace policy PDF, which contractors can view.

    • quote string

      The ID of the quote used to create the policy.

    • One of active, cancelled, or expired.

      Values are active, cancelled, or expired.

POST /api/v1/policies
curl \
 -X POST https://api.1099policy.com/api/v1/policies \
 -H "Content-Type: application/json" \
 -d '{"effective_date":1646818364,"expiration_date":1678334737,"quote":"qt_5DciVga8Kt"}'
Request example
{
  "effective_date": 1646818364,
  "expiration_date": 1678334737,
  "quote": "qt_5DciVga8Kt"
}
Response example (201)
{
  "created": 1646818364,
  "effective_date": 1646818364,
  "expiration_date": 1678334737,
  "id": "pl_WzFRszJhoY",
  "pdf_url": "http://ten99policy.s3.amazonaws.com/1099policy-coi-sample.pdf",
  "quote": "qt_5DciVga8Kt",
  "status": "active"
}

Retrieve a policy

GET /api/v1/policies/{policy_id}

Retrieves the details of an existing policy.
Supply the unique policy ID from either a policy
creation request or the policy list, and 1099Policy
will return the corresponding policy information.

Body

  • policy string Required

    The ID of the desired policy.

Responses

  • 200 object

    Returns a policy object if a valid ID was provided.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • effective_date integer(int64)

      A timestamp used to determine the insurance policy start date. Measured in seconds since the Unix epoch. The default effective_date is the next day.

    • expiration_date integer(int64)

      A timestemp used to determine the insurance policy end date. Measured in seconds since the Unix epoch. The default expiration_date is 30 days after the effective_date.

    • id string

      Unique identifier for the object.

    • pdf_url string

      A URL for the hosted insurnace policy PDF, which contractors can view.

    • quote string

      The ID of the quote used to create the policy.

    • One of active, cancelled, or expired.

      Values are active, cancelled, or expired.

GET /api/v1/policies/{policy_id}
curl \
 -X GET https://api.1099policy.com/api/v1/policies/{policy_id} \
 -H "Content-Type: application/json" \
 -d '{"policy":"pl_WzFRszJhoY"}'
Request example
{
  "policy": "pl_WzFRszJhoY"
}
Response example (200)
{
  "created": 1646818364,
  "effective_date": 1646818364,
  "expiration_date": 1678334737,
  "id": "pl_WzFRszJhoY",
  "pdf_url": "http://ten99policy.s3.amazonaws.com/1099policy-coi-sample.pdf",
  "quote": "qt_5DciVga8Kt",
  "status": "active"
}

Update a policy

PUT /api/v1/policies/{policy_id}

Policies can be switched on and off using the is_active flag.
Use this functionality if you don't have preset policy
start and end times.

Body

  • created integer(int64)

    Time at which the object was created. Measured in seconds since the Unix epoch.

  • effective_date integer(int64)

    A timestamp used to determine the insurance policy start date. Measured in seconds since the Unix epoch. The default effective_date is the next day.

  • expiration_date integer(int64)

    A timestemp used to determine the insurance policy end date. Measured in seconds since the Unix epoch. The default expiration_date is 30 days after the effective_date.

  • id string

    Unique identifier for the object.

  • pdf_url string

    A URL for the hosted insurnace policy PDF, which contractors can view.

  • quote string

    The ID of the quote used to create the policy.

  • One of active, cancelled, or expired.

    Values are active, cancelled, or expired.

Responses

  • 200 object

    Returns the policy object if the update succeeded. Returns an error if update parameters are invalid.

    • created integer(int64)

      Time at which the object was created. Measured in seconds since the Unix epoch.

    • effective_date integer(int64)

      A timestamp used to determine the insurance policy start date. Measured in seconds since the Unix epoch. The default effective_date is the next day.

    • expiration_date integer(int64)

      A timestemp used to determine the insurance policy end date. Measured in seconds since the Unix epoch. The default expiration_date is 30 days after the effective_date.

    • id string

      Unique identifier for the object.

    • pdf_url string

      A URL for the hosted insurnace policy PDF, which contractors can view.

    • quote string

      The ID of the quote used to create the policy.

    • One of active, cancelled, or expired.

      Values are active, cancelled, or expired.

PUT /api/v1/policies/{policy_id}
curl \
 -X PUT https://api.1099policy.com/api/v1/policies/{policy_id} \
 -H "Content-Type: application/json" \
 -d '{"effective_date":1646818364,"expiration_date":1678334737,"quote":"qt_5DciVga8Kt"}'
Request example
{
  "effective_date": 1646818364,
  "expiration_date": 1678334737,
  "quote": "qt_5DciVga8Kt"
}
Response example (200)
{
  "created": 1646818364,
  "effective_date": 1646818364,
  "expiration_date": 1678334737,
  "id": "pl_WzFRszJhoY",
  "pdf_url": "http://ten99policy.s3.amazonaws.com/1099policy-coi-sample.pdf",
  "quote": "qt_5DciVga8Kt",
  "status": "active"
}

Delete a policy

DELETE /api/v1/policies/{policy_id}

Permanently deletes a policy. Deleting a policy immediately cancels
the insurance coverage for the contractor.

Body

Responses

  • 200 object

    Returns an object with a deleted parameter on success. If the policy ID does not exist, this call returns an error.

DELETE /api/v1/policies/{policy_id}
curl \
 -X DELETE https://api.1099policy.com/api/v1/policies/{policy_id} \
 -H "Content-Type: application/json" \
 -d '{"policy":"string"}'
Request example
{
  "policy": "string"
}
Response example (200)
{
  "deleted": true,
  "deleted_at": "(now)",
  "id": "pl_WzFRszJhoY",
  "object": "policy"
}

List all assignments

GET /api/v1/assignments

Returns a list of your assignments. The assigments returned
are sorted by creation date, with the most recently created
assignments appearing first.