---
title: "Update an accessWidget license"
method: PATCH
path: "/accounts/{accountId}/access-widget-licenses/{licenseId}"
---

# Update an accessWidget license

`PATCH /accounts/{accountId}/access-widget-licenses/{licenseId}`

## Request

- Base URL: `https://dashboard.accessibe.com/api/v1/partners`
- URL: `https://dashboard.accessibe.com/api/v1/partners/accounts/{accountId}/access-widget-licenses/{licenseId}`
- Auth: API key in header `X-API-Key`
- TypeScript: <https://skmtc.dev/accessibe/apis/partners-api-license/docs/accounts/:accountId/access-widget-licenses/:licenseId/patch.ts> (a function with typed inputs; its response is checked against the schema)

Updates the details of the specified accessWidget license for the specified account. Any parameters not provided will be left unchanged. 
Use GET /accounts/{accountId}/access-widget-licenses and filter by domain to get the licenseId for a specific domain.

planSKU is the type of plan for the license where: 

1 = Standard, 2 = Advanced Plus, 3 = Enterprise, 5 = Advanced,
21 = Micro, 22 = Growth, 23 = Scale

Note: If you pass null for a specific field in `settings` (for example `leadColor: null`), that field set to the default value.

## Path parameters

- `accountId` string, required
- `licenseId` string, required

## Request body

- UpdateLicense
  - `domain` string, required: domain of an exiting license
  - `newDomain` string: New domain for the license, you can update only if you have the allowTransferByApi set to true
  - `planSKU` 1 | 2 | 3 | 5 | 21 | 22 | 23: Plan SKU for the license.
  - `contactName` string: New full name of contact for the license
  - `contactEmail` string: New contact email for the license
  - `contactPhone` string: New contact phone for the license
  - `contactCountryCode` string: New contact country code for the license
  - `discountEnabled` boolean: Set to true to enable discounts for the account. Set to false to get commissions instead of discounts. The parameter activate below must be set to true.
  - `monthly` boolean: For monthly subscription can pass it as true, else it will be yearly
  - `activate` boolean: Activate the license, need to have in the account allowActivationByApi set to true
  - `disable` boolean: Disable the license, need to have in the account allowDisableByApi set to true
  - `settings` UpdateSettings
    - `default` boolean, nullable: If true, all customization settings revert to their system defaults, regardless of other fields.
    - `leadColor` string, nullable
    - `language` 'en' | 'es' | 'fr' | 'de' | 'pl' | 'it' | 'pt' | 'nl' | 'hu' | 'no' | 'sl' | 'sk' | 'sv' | 'cs' | 'tr' | 'ja' | 'tw' | 'zh' | 'he' | 'ru' | 'ar' | 'fi' | 'uk' | 'ro' | 'ga' | 'el' | 'sr' | 'bs' | 'hr' | 'lb' | 'sq' | 'da', nullable
    - `position` 'left' | 'right', nullable
    - `triggerColor` string, nullable
    - `triggerPositionX` 'left' | 'right', nullable
    - `triggerPositionY` 'top' | 'center' | 'bottom', nullable
    - `triggerSize` 'small' | 'medium' | 'big', nullable
    - `triggerRadius` '50%' | '0' | '10px' | '5px', nullable
    - `hideTrigger` boolean, nullable
    - `triggerOffsetX` number, nullable
    - `triggerOffsetY` number, nullable
    - `triggerIcon` 'checkmark' | 'display' | 'display2' | 'display3' | 'help' | 'people' | 'people2' | 'settings' | 'settings2' | 'wheels' | 'wheels2', nullable
    - `hideMobile` boolean, nullable
    - `mobile` object, nullable
      - `triggerPositionX` 'left' | 'right', nullable
      - `triggerPositionY` 'top' | 'center' | 'bottom', nullable
      - `triggerSize` 'small' | 'medium' | 'big', nullable
      - `triggerRadius` '50%' | '0' | '10px' | '5px', nullable
      - `triggerOffsetX` number, nullable
      - `triggerOffsetY` number, nullable
    - `statementLink` string, url, nullable
    - `footerHtml` string, nullable

## Response `200`

License updated

- object
  - `success` boolean
  - `message` string
  - `data` LicenseCreateOrUpdateResponse
    - `id` string
    - `date` string, date-time
    - `relatedAccountId` string
    - `domain` string
    - `status` 'active' | 'grace' | 'expired' | 'trial'
    - `price` number
    - `licenseType` string
    - `plan` Plan, nullable
      - `name` string
      - `planSKU` number
    - `relatedBillingId` string, nullable
    - `statementDate` string, date-time
    - `dateTrialExpires` string, date-time
    - `datePlanExpires` string, date-time, nullable
    - `datePlanFirstActivated` string, date-time, nullable
    - `lastSubscriptionPaymentId` string, nullable
    - `enableGoogleAnalytics` boolean
    - `enableRemediationReport` boolean
    - `monthly` boolean
    - `autoRenew` boolean
    - `contactName` string, nullable
    - `contactEmail` string, nullable
    - `contactPhone` string, nullable
    - `contactCountry` string, nullable

## Other responses

- `400`: The request is invalid. Any field could potentially be the cause.
- `401`: Missing or invalid API key
- `403`: Account does not have access to do this operation
- `404`: License not found
- `409`: Domain already being used

---

[API](https://skmtc.dev/accessibe/apis/partners-api-license.md) - [All operations](https://skmtc.dev/accessibe/apis/partners-api-license/llms.txt) - [OpenAPI document](https://skmtc.dev/accessibe/apis/partners-api-license/revisions/b7f155181cf7?raw)
