---
title: "List extension types"
method: GET
path: "/extension-types"
tags: ["extension-types"]
---

# List extension types

`GET /extension-types`

## Response `200`

OK

- ModelExtensionTypesResponse
  - `extensionTypes` ModelExtensionType[]
    - `apiVersion` string
    - `kind` 'Configuration' | 'Agent' | 'AgentType' | 'AgentVersion' | 'Source' | 'Processor' | 'Connector' | 'Destination' | 'Extension' | 'SourceType' | 'ProcessorType' | 'ConnectorType' | 'DestinationType' | 'ExtensionType' | 'RecommendationType' | 'Unknown' | 'Rollout' | 'RolloutType' | 'Organization' | 'Account' | 'Invitation' | 'Login' | 'User' | 'AccountOrganizationBinding' | 'UserOrganizationBinding' | 'UserAccountBinding' | 'AuditTrail' | 'AvailableComponents' | 'SecretsManagerType' | 'SecretsManager' | 'Recording' | 'Credential' | 'CredentialType' | 'Fleet' | 'Integration' | 'IntegrationType' | 'ConfigurationType' | 'Notification' | 'Recommendation' | 'PublicProcessor' | 'Blueprint' | 'PrometheusRule' | 'APIKey' | 'ResourcePreset'
    - `metadata` ModelMetadata
      - `additionalInfo` ModelAdditionalInfo
        - `documentation` ModelDocumentationLink[]
          - `text` string
          - `url` string
        - `message` string
      - `blueprintTags` ModelBlueprintTags
      - `dateModified` string
      - `deprecated` boolean — Deprecated indicates that this resource is deprecated and should not be used. Deprecated resources should contain additional information about why the resource is deprecated and what should be used instead. Note: Ironically, the Deprecated field is itself deprecated. Use Stability instead.
      - `description` string
      - `displayName` string
      - `hash` string — Hash is a hex formatted sha256 Hash of the json-encoded spec that is used to determine if the spec has changed.
      - `icon` string
      - `id` string
      - `labels` ModelLabels
      - `name` string
      - `resourceDocLink` string
      - `stability` 'development' | 'alpha' | 'beta' | 'stable' | 'deprecated' | 'legacy' | ''
      - `version` integer — Version is a 1-based integer that is incremented each time the spec is changed.
      - `warning` string — Warning is an optional message that is displayed to the user when the resource is configured. Currently used for IntegrationTypes.
    - `spec` ModelResourceTypeSpec
      - `featureGate` string — FeatureGate is a string that is used to gate the availability of this resource type.
      - `logs` ModelResourceTypeOutputOptions
        - `connectors` string
        - `emits` OtelPipelineType[] — Emits can be used to indicate that a connector emits different kinds of telemetry that it consumes. If empty, it is assumed that the connector emits the same kind of telemetry that it consumes.
        - `exporters` string
        - `extensions` string
        - `processors` string
        - `receivers` string — These fields are duplicated between here and ResourceTypeOutputTemplate because mapstructure:squash is unmarshal-only
        - `templates` ModelResourceTypeOutputTemplate[]
          - `connectors` string
          - `deprecated` ModelResourceTypeOutputTemplateComponentRequirement[] — Deprecations marks component versions where this template becomes deprecated Example: To mark pluginreceiver >= v1.84.0 as deprecated: deprecated: - component: "github.com/.../receiver/pluginreceiver" operator: ">=" version: "1.84.0"
            - `component` string
            - `operator` '>=' | '>'
            - `version` string
          - `exporters` string
          - `extensions` string
          - `match` ModelResourceTypeOutputTemplateComponentRequirement[] — Requirements mark component versions where this template matches Example: To mark pluginreceiver >= v1.84.0 as matching: match: - component: "github.com/.../receiver/pluginreceiver" operator: ">=" version: "1.84.0"
            - `component` string
            - `operator` '>=' | '>'
            - `version` string
          - `processors` string
          - `receivers` string — These fields are duplicated between here and ResourceTypeOutputOptions because mapstructure:squash is unmarshal-only
      - `logs+metrics` ModelResourceTypeOutputOptions
        - `connectors` string
        - `emits` OtelPipelineType[] — Emits can be used to indicate that a connector emits different kinds of telemetry that it consumes. If empty, it is assumed that the connector emits the same kind of telemetry that it consumes.
        - `exporters` string
        - `extensions` string
        - `processors` string
        - `receivers` string — These fields are duplicated between here and ResourceTypeOutputTemplate because mapstructure:squash is unmarshal-only
        - `templates` ModelResourceTypeOutputTemplate[]
          - `connectors` string
          - `deprecated` ModelResourceTypeOutputTemplateComponentRequirement[] — Deprecations marks component versions where this template becomes deprecated Example: To mark pluginreceiver >= v1.84.0 as deprecated: deprecated: - component: "github.com/.../receiver/pluginreceiver" operator: ">=" version: "1.84.0"
            - `component` string
            - `operator` '>=' | '>'
            - `version` string
          - `exporters` string
          - `extensions` string
          - `match` ModelResourceTypeOutputTemplateComponentRequirement[] — Requirements mark component versions where this template matches Example: To mark pluginreceiver >= v1.84.0 as matching: match: - component: "github.com/.../receiver/pluginreceiver" operator: ">=" version: "1.84.0"
            - `component` string
            - `operator` '>=' | '>'
            - `version` string
          - `processors` string
          - `receivers` string — These fields are duplicated between here and ResourceTypeOutputOptions because mapstructure:squash is unmarshal-only
      - `logs+metrics+traces` ModelResourceTypeOutputOptions
        - `connectors` string
        - `emits` OtelPipelineType[] — Emits can be used to indicate that a connector emits different kinds of telemetry that it consumes. If empty, it is assumed that the connector emits the same kind of telemetry that it consumes.
        - `exporters` string
        - `extensions` string
        - `processors` string
        - `receivers` string — These fields are duplicated between here and ResourceTypeOutputTemplate because mapstructure:squash is unmarshal-only
        - `templates` ModelResourceTypeOutputTemplate[]
          - `connectors` string
          - `deprecated` ModelResourceTypeOutputTemplateComponentRequirement[] — Deprecations marks component versions where this template becomes deprecated Example: To mark pluginreceiver >= v1.84.0 as deprecated: deprecated: - component: "github.com/.../receiver/pluginreceiver" operator: ">=" version: "1.84.0"
            - `component` string
            - `operator` '>=' | '>'
            - `version` string
          - `exporters` string
          - `extensions` string
          - `match` ModelResourceTypeOutputTemplateComponentRequirement[] — Requirements mark component versions where this template matches Example: To mark pluginreceiver >= v1.84.0 as matching: match: - component: "github.com/.../receiver/pluginreceiver" operator: ">=" version: "1.84.0"
            - `component` string
            - `operator` '>=' | '>'
            - `version` string
          - `processors` string
          - `receivers` string — These fields are duplicated between here and ResourceTypeOutputOptions because mapstructure:squash is unmarshal-only
      - `logs+traces` ModelResourceTypeOutputOptions
        - `connectors` string
        - `emits` OtelPipelineType[] — Emits can be used to indicate that a connector emits different kinds of telemetry that it consumes. If empty, it is assumed that the connector emits the same kind of telemetry that it consumes.
        - `exporters` string
        - `extensions` string
        - `processors` string
        - `receivers` string — These fields are duplicated between here and ResourceTypeOutputTemplate because mapstructure:squash is unmarshal-only
        - `templates` ModelResourceTypeOutputTemplate[]
          - `connectors` string
          - `deprecated` ModelResourceTypeOutputTemplateComponentRequirement[] — Deprecations marks component versions where this template becomes deprecated Example: To mark pluginreceiver >= v1.84.0 as deprecated: deprecated: - component: "github.com/.../receiver/pluginreceiver" operator: ">=" version: "1.84.0"
            - `component` string
            - `operator` '>=' | '>'
            - `version` string
          - `exporters` string
          - `extensions` string
          - `match` ModelResourceTypeOutputTemplateComponentRequirement[] — Requirements mark component versions where this template matches Example: To mark pluginreceiver >= v1.84.0 as matching: match: - component: "github.com/.../receiver/pluginreceiver" operator: ">=" version: "1.84.0"
            - `component` string
            - `operator` '>=' | '>'
            - `version` string
          - `processors` string
          - `receivers` string — These fields are duplicated between here and ResourceTypeOutputOptions because mapstructure:squash is unmarshal-only
      - `metrics` ModelResourceTypeOutputOptions
        - `connectors` string
        - `emits` OtelPipelineType[] — Emits can be used to indicate that a connector emits different kinds of telemetry that it consumes. If empty, it is assumed that the connector emits the same kind of telemetry that it consumes.
        - `exporters` string
        - `extensions` string
        - `processors` string
        - `receivers` string — These fields are duplicated between here and ResourceTypeOutputTemplate because mapstructure:squash is unmarshal-only
        - `templates` ModelResourceTypeOutputTemplate[]
          - `connectors` string
          - `deprecated` ModelResourceTypeOutputTemplateComponentRequirement[] — Deprecations marks component versions where this template becomes deprecated Example: To mark pluginreceiver >= v1.84.0 as deprecated: deprecated: - component: "github.com/.../receiver/pluginreceiver" operator: ">=" version: "1.84.0"
            - `component` string
            - `operator` '>=' | '>'
            - `version` string
          - `exporters` string
          - `extensions` string
          - `match` ModelResourceTypeOutputTemplateComponentRequirement[] — Requirements mark component versions where this template matches Example: To mark pluginreceiver >= v1.84.0 as matching: match: - component: "github.com/.../receiver/pluginreceiver" operator: ">=" version: "1.84.0"
            - `component` string
            - `operator` '>=' | '>'
            - `version` string
          - `processors` string
          - `receivers` string — These fields are duplicated between here and ResourceTypeOutputOptions because mapstructure:squash is unmarshal-only
      - `metrics+traces` ModelResourceTypeOutputOptions
        - `connectors` string
        - `emits` OtelPipelineType[] — Emits can be used to indicate that a connector emits different kinds of telemetry that it consumes. If empty, it is assumed that the connector emits the same kind of telemetry that it consumes.
        - `exporters` string
        - `extensions` string
        - `processors` string
        - `receivers` string — These fields are duplicated between here and ResourceTypeOutputTemplate because mapstructure:squash is unmarshal-only
        - `templates` ModelResourceTypeOutputTemplate[]
          - `connectors` string
          - `deprecated` ModelResourceTypeOutputTemplateComponentRequirement[] — Deprecations marks component versions where this template becomes deprecated Example: To mark pluginreceiver >= v1.84.0 as deprecated: deprecated: - component: "github.com/.../receiver/pluginreceiver" operator: ">=" version: "1.84.0"
            - `component` string
            - `operator` '>=' | '>'
            - `version` string
          - `exporters` string
          - `extensions` string
          - `match` ModelResourceTypeOutputTemplateComponentRequirement[] — Requirements mark component versions where this template matches Example: To mark pluginreceiver >= v1.84.0 as matching: match: - component: "github.com/.../receiver/pluginreceiver" operator: ">=" version: "1.84.0"
            - `component` string
            - `operator` '>=' | '>'
            - `version` string
          - `processors` string
          - `receivers` string — These fields are duplicated between here and ResourceTypeOutputOptions because mapstructure:squash is unmarshal-only
      - `parameters` ModelParameterDefinition[] — Parameters currently uses the model from stanza. Eventually we will probably create a separate definition for Bindplane.
        - `advancedConfig` boolean
        - `default` unknown
        - `description` string
        - `documentation` ModelDocumentationLink[]
          - `text` string
          - `url` string
        - `hidden` boolean
        - `label` string
        - `name` string
        - `options` ModelParameterOptions
          - `code` boolean — Code indicates that the parameter should be rendered in a code block.
          - `contexts` string[] — Contexts lists the OTTL contexts ("body", "attributes", "resource", etc.) the per-row dropdown of an ottlFieldRows parameter should offer.
          - `creatable` boolean — Creatable will modify the "enum" parameter from a select to a creatable select where a user can specify a custom value
          - `gridColumns` integer — GridColumns will specify the number of flex-grid columns the control will take up, must be an integer between 1 and 12 or unspecified.
          - `horizontalDivider` boolean — HorizontalDivider will add a horizontal divider after the parameter at full width of the form.
          - `labels` object — Labels indicate labels that can be used when rendering the parameter. This was added for the "map" parameter type to make the "key" and "value" labels configurable.
          - `metricCategories` ModelMetricCategory[]
            - `column` integer — 0 or 1
            - `label` string
            - `metrics` ModelMetricOption[]
              - …
          - `multiline` boolean — Multiline indicates that a multiline textarea should be used for editing a "string" parameter.
          - `ottlContext` string — OttlContext indicates which field to use when auto-populating an ottlField parameter.
          - `ottlContextRef` string — OttlContextRef indicates the name of another parameter whose value determines the OTTL context. This allows a parameter to dynamically resolve its context based on a sibling parameter's value.
          - `password` boolean — Password indicates the string field is for a password and will be hidden by the UI. Only applies to string parameters. Deprecated, use Sensitive instead.
          - `preventEmpty` boolean — PreventEmpty indicates that empty values should not be allowed in the parameter.
          - `processorContext` string — ProcessorContext indicates which processor is used to handle the parameter.
          - `saasOnly` boolean — SaasOnly indicates that the parameter is only to be shown in a SaaS environment.
          - `sectionHeader` boolean — SectionHeader is used to indicate that the bool parameter input is a switch for further configuration for UI styling.
          - `sensitive` boolean — Sensitive indicates that the field is sensitive and will be masked with (sensitive) in the response.
          - `sensitiveCompanion` string — SensitiveCompanion is the name of a companion parameter that stores sensitive values. Used for map parameters where individual values can be marked as sensitive.
          - `subHeader` string — SubHeader will place a subheader above the parameter.
          - `trackUnchecked` boolean — TrackUnchecked will modify the "enums" parameter to store the unchecked values as the value.
          - `variant` string — Variant indicates the variant of the input for parameters that support multiple input types or styles. "condition" parameter: input can be "expanded" or "collapsed". "telemetrySelector" parameter: input can be "exclusive", meaning only one value can be selected.
        - `properties` object — Properties are parameter specific properties that are not part of the standard parameter definition. They are similar to Options, but more flexible because they do not need to be defined for all parameter types.
        - `relevantIf` ModelRelevantIfCondition[]
          - `name` string
          - `operator` string
          - `value` unknown
        - `relevantIfOperator` string
        - `required` boolean
        - `requiredIf` ModelRelevantIfCondition[] — RequiredIf makes the parameter required only when all of its conditions are satisfied (same shape as RelevantIf, AND semantics). Lets a single field be required conditionally on a sibling field's value, instead of splitting into per-value fields.
          - `name` string
          - `operator` string
          - `value` unknown
        - `requiredIfOperator` string — RequiredIfOperator controls how RequiredIf conditions combine: "and" (default, every condition must hold) or "or" (any condition makes the parameter required).
        - `type` string — "string", "int", "bool", "strings", "enum", or "extension"
        - `validValues` string[] — only useable if Type == "enum"
      - `supportedLicenseTypes` string[] — SupportedLicenseTypes is a list of license types that are supported by this resource type. Currently only used for IntegrationTypes.
      - `supportedPlatforms` string[] — SupportedPlatforms is a list of platforms that are supported by this resource type.
      - `traces` ModelResourceTypeOutputOptions
        - `connectors` string
        - `emits` OtelPipelineType[] — Emits can be used to indicate that a connector emits different kinds of telemetry that it consumes. If empty, it is assumed that the connector emits the same kind of telemetry that it consumes.
        - `exporters` string
        - `extensions` string
        - `processors` string
        - `receivers` string — These fields are duplicated between here and ResourceTypeOutputTemplate because mapstructure:squash is unmarshal-only
        - `templates` ModelResourceTypeOutputTemplate[]
          - `connectors` string
          - `deprecated` ModelResourceTypeOutputTemplateComponentRequirement[] — Deprecations marks component versions where this template becomes deprecated Example: To mark pluginreceiver >= v1.84.0 as deprecated: deprecated: - component: "github.com/.../receiver/pluginreceiver" operator: ">=" version: "1.84.0"
            - `component` string
            - `operator` '>=' | '>'
            - `version` string
          - `exporters` string
          - `extensions` string
          - `match` ModelResourceTypeOutputTemplateComponentRequirement[] — Requirements mark component versions where this template matches Example: To mark pluginreceiver >= v1.84.0 as matching: match: - component: "github.com/.../receiver/pluginreceiver" operator: ">=" version: "1.84.0"
            - `component` string
            - `operator` '>=' | '>'
            - `version` string
          - `processors` string
          - `receivers` string — These fields are duplicated between here and ResourceTypeOutputOptions because mapstructure:squash is unmarshal-only
      - `version` string
    - `status` ModelVersionStatus
      - `latest` boolean

## Other responses

- `401` — Unauthorized
- `500` — Internal Server Error

---

[API](https://skmtc.dev/bindplane/apis/docs-bindplane-com.md) · [All operations](https://skmtc.dev/bindplane/apis/docs-bindplane-com/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/bindplane/docs-bindplane-com/revisions/bfcb7e57121c/schema)
