---
title: "Upsert Subscription"
method: PUT
path: "/apiHub/performanceManagement/v1/companies/{companyId}/assessmentOrders/subscription"
tags: ["Subscription"]
---

# Upsert Subscription

`PUT /apiHub/performanceManagement/v1/companies/{companyId}/assessmentOrders/subscription`

## Request

- Base URL: `dc1demogwext.paylocity.com` (relative, and the document’s source URL is not known)
- URL: `dc1demogwext.paylocity.com/apiHub/performanceManagement/v1/companies/{companyId}/assessmentOrders/subscription`
- Auth: none declared. Required headers: `Authorization`

> 🚧 Partner Restricted
> All assessment API endpoints are restricted to assessment providers that have signed a Paylocity technology partnership agreement. 
[Please reach out to our team](https://www.paylocity.com/contact/partner-form/) if you would like to discuss partnership opportunities.

**Summary Description**

This endpoint is used for updating or creating a subscription for a company within Paylocity's platform by the companyId.

**Use Cases**

- Single Subscription Per Company: Each company can have only one subscription, eliminating the need for an ID in the request
- Create or Update: The Partner can use this endpoint to either create a new subscription or update an existing one
- Mandatory Subscription Object: Orders cannot be submitted without a subscription object, subject to confirmation with the partner

## Path parameters

- `companyId` string, required

## Headers

- `testMode` boolean
- `Authorization` string, required

## Request body

- SubscriptionDto: Subscription payload.
  - `level` string, nullable: The level of the client's subscription (e.g., premium, basic, etc.). Max length = 150. Optional.
  - `price` number, double, nullable: The value of the subscription. Optional.
  - `currency` string, nullable: The currency code (USD, EUR, GBP, CAD...). Optional.
  - `term` string, nullable: The term of the client's subscription (e.g., monthly, quarterly, annually). Max length = 150. Optional.
  - `expirationDate` string, date-time, nullable: The date the subscription will expire (in UTC). Optional.
  - `billingCodes` BillingCodeDto[], nullable: An array of billing codes. Optional.
    - `code` string, nullable: The Billing code created on your side that applies to the client specifically for invoicing purposes. Max length = 150. Required.
    - `isActive` boolean: Optional field to make a billing code active or inactive. If active, it will show in the UI for users to select for a specific job. Inactive codes will not show in the UI. Optional.

## Response `201`

Created - Resource has been created.

- SubscriptionDto: Subscription payload.
  - `level` string, nullable: The level of the client's subscription (e.g., premium, basic, etc.). Max length = 150. Optional.
  - `price` number, double, nullable: The value of the subscription. Optional.
  - `currency` string, nullable: The currency code (USD, EUR, GBP, CAD...). Optional.
  - `term` string, nullable: The term of the client's subscription (e.g., monthly, quarterly, annually). Max length = 150. Optional.
  - `expirationDate` string, date-time, nullable: The date the subscription will expire (in UTC). Optional.
  - `billingCodes` BillingCodeDto[], nullable: An array of billing codes. Optional.
    - `code` string, nullable: The Billing code created on your side that applies to the client specifically for invoicing purposes. Max length = 150. Required.
    - `isActive` boolean: Optional field to make a billing code active or inactive. If active, it will show in the UI for users to select for a specific job. Inactive codes will not show in the UI. Optional.

## Other responses

- `204`: No Content - Resource has been updated.
- `400`: Bad Request - Returns the details of the error.
- `401`: Unauthorized
- `415`: Unsupported Media Type - Returns the details of the error.

## Changes

- **2026-11-03** `bf323b2134ff`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/paylocity/apis/assessments-api/changes/apiHub/performanceManagement/v1/companies/:companyId/assessmentOrders/subscription/put.md)

---

[API](https://skmtc.dev/paylocity/apis/assessments-api.md) - [All operations](https://skmtc.dev/paylocity/apis/assessments-api/llms.txt) - [OpenAPI document](https://skmtc.dev/paylocity/apis/assessments-api/revisions/bf323b2134ff?raw)
