Skip to content

Conversation

@AmberAlston
Copy link
Member

@AmberAlston AmberAlston commented Jan 28, 2026

Summary

This PR enhances the custom license fields documentation by adding conceptual guidance and practical examples to complement the existing procedural how-to content.

Preview: https://deploy-preview-3794--replicated-docs.netlify.app/vendor/licenses-adding-custom-fields
Original: https://docs.replicated.com/vendor/licenses-adding-custom-fields#manage-built-in-license-fields

Key Changes

1. Added "About License Fields" section (May not be necessary but I didn't necessarily recognize that the querying info was a separate page at first)

  • Brief overview of license fields concept
  • Cross-links to existing documentation for accessing field values:
    • licenses-reference-sdk - For Replicated SDK
    • licenses-reference-kots-runtime - For KOTS installers
    • licenses-reference-helm - For Helm installations
    • licenses-verify-fields-sdk-api - For verification

2. Added "Common Use Cases for Custom License Fields" section (I like this section because it helps people understand how they could use these which is a common question)
Provides concrete examples organized by category:

  • Capacity limits: max_users, seats, storage_gb, api_calls_per_month
  • Feature tiers: tier, support_level
  • Configuration: api_endpoint, region, data_center, environment
  • Credentials: api_key, auth_token, encryption_key
  • Business logic: contract_type, renewal_date, account_manager

3. Added "How Custom Fields Appear in Licenses" subsection

  • Shows example license YAML with custom fields in spec.entitlements
  • Includes realistic examples (seats, tier, premium_support)
  • Helps vendors visualize the output of creating custom fields

4. Enhanced Field Types table. (goal was to extend the 'how you might use these' examples)
Added two new columns to the existing table:

  • Purpose: High-level category for each field type
  • When to Use: Specific guidance with practical examples

Before:

  • Type | Description | Widget

After:

  • Type | Description | Purpose | When to Use | Widget

5. Added Vendor API v3 reference

  • Brief mention of API-based field management
  • Link to createcustomlicensefield API endpoint

Benefits

These enhancements provide vendors with:

  • Understanding of when and why to use custom fields (not just how)
  • Concrete examples they can adapt for their use cases
  • Clear navigation to related documentation for accessing field values
  • Better understanding of field type choices through the enhanced table
  • Awareness of API-based management options

What's NOT Changed

This PR preserves all existing content:

  • All procedural how-to sections remain unchanged
  • Screenshot references intact
  • No changes to built-in license fields section
  • All existing links and warnings preserved

Testing Plan

  • Preview documentation build to ensure proper rendering
  • Verify all internal links work correctly (licenses-reference-sdk, etc.)
  • Check that the enhanced table renders properly with 5 columns
  • Confirm YAML code block is syntax-highlighted correctly
  • Test that note callouts render properly

🤖 Generated with Claude Code + Amber notes/edits

This update adds conceptual guidance and practical examples to complement the existing procedural content for managing custom license fields.

Key improvements:
- Added "About License Fields" section with cross-links to field access documentation (SDK, KOTS, Helm, verification)
- Added "Common Use Cases" section with concrete examples (capacity limits, feature tiers, configuration, credentials, business logic)
- Added "How Custom Fields Appear in Licenses" subsection with example license YAML showing custom fields in entitlements
- Enhanced Field Types table with "Purpose" and "When to Use" columns with practical examples
- Added Vendor API v3 reference for programmatic field management
- Improved formatting with proper note callouts

These enhancements help vendors understand when and why to use custom fields, not just how to create them.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
@netlify
Copy link

netlify bot commented Jan 28, 2026

Deploy Preview for replicated-docs ready!

Name Link
🔨 Latest commit c7fa2f7
🔍 Latest deploy log https://app.netlify.com/projects/replicated-docs/deploys/697a845dfb9dd00008d53913
😎 Deploy Preview https://deploy-preview-3794--replicated-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@replicated-ci replicated-ci added type::docs Improvements or additions to documentation type::feature labels Jan 28, 2026
@netlify
Copy link

netlify bot commented Jan 28, 2026

Deploy Preview for replicated-docs-upgrade ready!

Name Link
🔨 Latest commit c7fa2f7
🔍 Latest deploy log https://app.netlify.com/projects/replicated-docs-upgrade/deploys/697a845d94d4a8000887c965
😎 Deploy Preview https://deploy-preview-3794--replicated-docs-upgrade.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@AmberAlston AmberAlston marked this pull request as ready for review January 28, 2026 21:12
@AmberAlston AmberAlston requested a review from a team as a code owner January 28, 2026 21:12
Copy link
Contributor

@paigecalvert paigecalvert left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks amber! good additions

| Field | The name used to reference the field. This value cannot be changed. |
| Title| The display name for the field. This is how the field appears in the Vendor Portal and the Admin Console. You can change the title in the Vendor Portal. |
| Type| The field type. This value cannot be changed. See [Understanding Custom License Field Types](#understanding-custom-license-field-types) for more information.
| Type| The field type. This value cannot be changed. See [Custom License Field Types](#custom-license-field-types).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed broken anchor

| Boolean | True or false | checkbox |
| Password | A short string of text that is masked on display | password |
| Enum | Provides a list of possible values | dropdown |
| Type | Description | Use cases | Widget |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

combined the purpose and when to use columns into "use cases" (seemed like they mostly said the same thing)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

good call

| Type | Description | Use cases | Widget |
|------|-------------|-----------|--------|
| Integer | A whole number numeric value | Use for numeric capacity limits, quotas, or counts. For example, `seats: 100` or `max_nodes: 5`. | Text field |
| String | Single-line text values | Use for short form text that fits on a single line, like short identifiers or environment names. For example, `account_manager: jeff_noble`. | Text field |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

changed the example for string fields to account_manager : firstname_lastname, since tier was mentioned as an example of when to use Enum

:::

String, Text, Password, and Enum types are all represented as strings in the license.
### How Custom Fields Appear in Licenses
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

small reorg to move this new section under the table that describes all the field types

- Enable access to certain features or tiers. For example, you could add a `tier` license field with values such as "basic", "premium", or "enterprise". You could also add a `support_level` field with options for "standard" or "priority".
- Store configuration settings like `api_endpoint`, `region`, `data_center`, or `environment`
- Include credentials in the license like `api_key`, `auth_token`, or `encryption_key` using the "Password" license field type to mask values in the UI
- Add metadata such as `contract_type`, `renewal_date`, or `account_manager` for reporting and workflows
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

moved the new use case examples to the Manage Custom License Fields subheading where some of this conceptual info was living

* You can also create custom fields to define entitlements for your application. For example, you can create a custom field to set the number of active users permitted, or add metadata like `contract_type`, `renewal_date`, or `account_manager` for reporting purposes.

For more information, see [Manage Customer License Fields](/vendor/licenses-adding-custom-fields).
For more information, see [Manage Built-In License Fields](/vendor/licenses-adding-custom-fields#manage-built-in-license-fields) and [Manage Custom License Fields](/vendor/licenses-adding-custom-fields#manage-custom-license-fields).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

updated the xref on the main About Licenses page so that people can go direct to the subsection on custom license fields (easier to find)

@AmberAlston AmberAlston merged commit 5f5035e into main Jan 28, 2026
4 checks passed
@AmberAlston AmberAlston deleted the enhance-custom-license-fields-docs branch January 28, 2026 22:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type::docs Improvements or additions to documentation type::feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants