Skip to content

Representing FieldSets

Tim Burks edited this page Mar 13, 2023 · 11 revisions

FieldSet artifacts allow groups of values to be stored in a registry and displayed in user interfaces like API Hub and the Registry Viewer.

FieldSet artifacts are defined in fields.proto. FieldSet artifacts can be associated with any resource (project, api, version, spec, or deployment) and are generally for storing raw values only. Contents of FieldSets are described in FieldSetDefinition artifacts, also described in fields.proto. FieldSetDefinition artifacts are typically stored at the project level.

Here is a sample FieldSet, described with Registry YAML:

apiVersion: apigeeregistry/v1
kind: FieldSet
metadata:
  parent: apis/acme.com
  name: support
data:
  definitionName: projects/menagerie/locations/global/artifacts/support
  values:
    email: "[email protected]"
    portal: "[Acme Developer Support](https://developer.acme.com/support)"

The associated FieldSetDefinition is here:

apiVersion: apigeeregistry/v1
kind: FieldSetDefinition
metadata:
  name: support
data:
  displayName: Support
  description: Look here to find support for this API.
  fields:
    - id: portal
      displayName: Developer Portal
      description: API documentation and access to developer tokens
    - id: email
      displayName: Support Email
      description: Contact the API support team
    - id: postman
      displayName: Postman
      description: Try this API with Postman!