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.
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
# 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'
Work with this as data
Every overlay here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for openapi overlays
4 MCP tools reach this
find_overlaysBrowse and filter every overlay in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/dify-metadata-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.