Dify · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Dify Service Metadata API

8 actions 8 updates phrasing extends openapi/dify-metadata-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Dify's API. It is a proposal applied on top of the contract, not a document Dify publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 8

$.info
$.paths['/datasets/{dataset_id}/metadata'].get
$.paths['/datasets/{dataset_id}/metadata'].post
$.paths['/datasets/{dataset_id}/metadata/{metadata_id}'].delete
$.paths['/datasets/{dataset_id}/metadata/{metadata_id}'].patch
$.paths['/datasets/{dataset_id}/metadata/built-in'].get
$.paths['/datasets/{dataset_id}/metadata/built-in/{action}'].post
$.paths['/datasets/{dataset_id}/documents/metadata'].post

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Dify Service Metadata API
  version: 1.0.0
extends: openapi/dify-metadata-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 7
- target: $.paths['/datasets/{dataset_id}/metadata'].get
  update:
    x-apievangelist-phrasing:
      intent: List a knowledge base's metadata fields
      effect: read
      questions:
      - Which metadata fields, custom and built-in, does my knowledge base have?
      - How many documents use each metadata field?
      instructions:
      - text: List all metadata fields in knowledge base {dataset_id}.
        slots:
          dataset_id: path.dataset_id
      - text: Show every metadata field for {dataset_id} with its document usage count.
        slots:
          dataset_id: path.dataset_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/datasets/{dataset_id}/metadata'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a custom metadata field
      effect: write
      questions:
      - How do I add a custom metadata field like author or date to my documents?
      - What value types can a new custom metadata field hold?
      instructions:
      - text: Create a {type} metadata field called {name} in knowledge base {dataset_id}.
        slots:
          type: requestBody.type
          name: requestBody.name
          dataset_id: path.dataset_id
      - text: Add custom field {name} of type {type} to {dataset_id}.
        slots:
          name: requestBody.name
          type: requestBody.type
          dataset_id: path.dataset_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/datasets/{dataset_id}/metadata/{metadata_id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a custom metadata field
      effect: destructive
      questions:
      - Do documents lose their values when I delete a custom metadata field?
      - Can I remove a custom metadata field I no longer need?
      instructions:
      - text: Delete metadata field {metadata_id} from knowledge base {dataset_id}.
        slots:
          metadata_id: path.metadata_id
          dataset_id: path.dataset_id
      - text: Permanently remove custom field {metadata_id} in {dataset_id}.
        slots:
          metadata_id: path.metadata_id
          dataset_id: path.dataset_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/datasets/{dataset_id}/metadata/{metadata_id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Rename a custom metadata field
      effect: write
      questions:
      - Can I rename a custom metadata field without losing its values?
      - Must a renamed metadata field's name be unique in the knowledge base?
      instructions:
      - text: Rename metadata field {metadata_id} in {dataset_id} to {name}.
        slots:
          metadata_id: path.metadata_id
          dataset_id: path.dataset_id
          name: requestBody.name
      - text: Change the name of custom field {metadata_id} in knowledge base {dataset_id} to {name}.
        slots:
          metadata_id: path.metadata_id
          dataset_id: path.dataset_id
          name: requestBody.name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/datasets/{dataset_id}/metadata/built-in'].get
  update:
    x-apievangelist-phrasing:
      intent: List the system's built-in metadata fields
      effect: read
      questions:
      - What built-in metadata fields does the system provide for documents?
      - Which system metadata fields are available before I define custom ones?
      instructions:
      - text: Show the built-in metadata fields for knowledge base {dataset_id}.
        slots:
          dataset_id: path.dataset_id
      - text: List the system-provided metadata fields available in {dataset_id}.
        slots:
          dataset_id: path.dataset_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/datasets/{dataset_id}/metadata/built-in/{action}'].post
  update:
    x-apievangelist-phrasing:
      intent: Enable or disable built-in metadata fields
      effect: write
      questions:
      - How do I turn on the built-in metadata fields for a knowledge base?
      - Can I switch off built-in metadata for one knowledge base?
      instructions:
      - text: '{action} built-in metadata fields for knowledge base {dataset_id}.'
        slots:
          action: path.action
          dataset_id: path.dataset_id
      - text: Enable the built-in metadata fields on {dataset_id}.
        slots:
          dataset_id: path.dataset_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/datasets/{dataset_id}/documents/metadata'].post
  update:
    x-apievangelist-phrasing:
      intent: Set metadata values on many documents at once
      effect: write
      questions:
      - Can I tag many documents with metadata values in one request?
      - What is the way to fill in metadata values across a batch of documents?
      instructions:
      - text: Apply metadata updates {operation_data} to documents in knowledge base {dataset_id}.
        slots:
          operation_data: requestBody.operation_data
          dataset_id: path.dataset_id
      - text: Set document metadata values in bulk for {dataset_id} using {operation_data}.
        slots:
          dataset_id: path.dataset_id
          operation_data: requestBody.operation_data
      method: generated
      generated: '2026-09-26'