Dify capabilities
Use this index to choose the Dify family that owns a task and interpret its AIP contract before invocation. The reviewed frozen catalogue contains 79 provider operations. Each configured app also publishes one invocation alias.
The source-derived ../assets/capabilities.json snapshot owns the ordered machine
inventory. Focused pages own task guidance and interpretation; the snapshot
does not replace runtime discovery or the source that constructs each contract.
Catalogue identity
| Property | Reviewed value |
|---|---|
| AIP source | 97be86e9efedf07ecf1783b03800f683f107fb04 |
| Pinned Dify source | f8d47616c15d0959f604f6a5e2e1d32d3108991b |
| Connector profile | aip.connector.dify.v1 |
| App operations | 33 |
| Knowledge operations | 46 |
| Frozen operations | 79 |
| Reads | 32 |
| Mutations | 47 |
| App invocation aliases | One per configured app |
A matching suffix does not prove that a capability is discoverable. The app mode, configured credential, admitted manifest, tenant binding, artifact, and provider baseline remain part of capability identity.
Choose a family
Each frozen operation appears in exactly one family.
| Family | Focused page | Total | Read | Mutation | Low | Medium | High | Approval | Retry |
|---|---|---|---|---|---|---|---|---|---|
| App metadata and files | app-metadata-and-files.md |
7 | 6 | 1 | 6 | 1 | 0 | 1 | 6 |
| Chat, conversations, and feedback | chat-messages-conversations-and-feedback.md |
9 | 5 | 4 | 5 | 3 | 1 | 4 | 5 |
| Workflows, streams, and human input | workflows-streaming-and-human-input.md |
9 | 4 | 5 | 4 | 4 | 1 | 5 | 4 |
| Audio | audio.md |
2 | 0 | 2 | 0 | 2 | 0 | 2 | 0 |
| Annotations | annotations.md |
6 | 2 | 4 | 2 | 2 | 2 | 4 | 2 |
| Datasets, tags, and retrieval | knowledge-datasets-tags-and-retrieval.md |
13 | 4 | 9 | 4 | 7 | 2 | 9 | 4 |
| Documents and indexing | knowledge-documents-and-indexing.md |
12 | 4 | 8 | 4 | 7 | 1 | 8 | 4 |
| Segments and child chunks | knowledge-segments-and-child-chunks.md |
9 | 3 | 6 | 3 | 4 | 2 | 6 | 3 |
| Metadata and models | knowledge-metadata-and-models.md |
8 | 3 | 5 | 3 | 4 | 1 | 5 | 3 |
| Pipelines and uploads | knowledge-pipelines-and-uploads.md |
4 | 1 | 3 | 1 | 3 | 0 | 3 | 1 |
| Total | 79 | 32 | 47 | 32 | 37 | 10 | 47 | 32 |
Retry means connector contract support for that read. It does not authorize a
caller to repeat an Action without checking its identity, terminal state,
budget, and provider outcome.
Read capability IDs
An app invocation alias contains only the configured app ID:
cap:dify:support-chat
│ └────────── configured app
└─────────────────── connector namespace
An app catalogue operation appends a frozen suffix:
cap:dify:support-chat:conversation.list
│ │ └──────────────── operation
│ └───────────────────────────── configured app
└────────────────────────────────────── connector namespace
A Knowledge capability has an explicit credential domain:
cap:dify:knowledge:main-workspace:dataset.list
│ │ │ └──── operation
│ │ └─────────────────── credential ID
│ └───────────────────────────── Knowledge domain
└────────────────────────────────────── connector namespace
Do not derive an ID from a Dify URL. Use authenticated tenant discovery and the admitted manifest.
Calculate a configuration’s surface
One app publishes its alias plus the operations supported by its mode:
| Mode | App operations | Alias included | App capabilities |
|---|---|---|---|
workflow |
23 | 1 | 24 |
completion |
19 | 1 | 20 |
chat |
27 | 1 | 28 |
advanced-chat |
29 | 1 | 30 |
agent-chat |
27 | 1 | 28 |
agent |
27 | 1 | 28 |
Each Knowledge credential adds 46 capabilities. The total is the sum across configured apps and Knowledge credentials. The host must still satisfy the global admitted-manifest limit, so descriptor parser maxima are not usable surface maxima.
Distinguish credential scopes
| Scope | Capability prefix | Credential |
|---|---|---|
| App alias and app operations | cap:dify:<app_id> |
API key loaded for that app |
| Knowledge operations | cap:dify:knowledge:<credential_id> |
Workspace Knowledge API key |
Binding metadata records the public credential ID, credential class, operation, provider method, path template, and upstream revision. It never contains the Bearer value.
Interpret methods and mutation class
| Provider method | Count | AIP class |
|---|---|---|
GET |
32 | Read |
POST |
31 | Mutation |
PUT |
2 | Mutation |
PATCH |
6 | Mutation |
DELETE |
8 | Mutation |
Only GET is retry-safe in the frozen catalogue. A stop, status toggle, form
submission, retrieval request, archive generation, or model execution remains
a mutation when its provider method is not GET.
Interpret kind and risk
| Kind | Count | Meaning |
|---|---|---|
| Tool | 73 | Normal app or Knowledge operation |
| Workflow | 6 | Workflow run read, run-by-ID, stop, event stream, and human-input form operations |
The app invocation alias is a Workflow for workflow mode and an Agent for all
other modes.
| Risk | Count | Rule |
|---|---|---|
| Low | 32 | Every GET |
| Medium | 37 | Non-delete mutation except two named high-impact operations |
| High | 10 | Every DELETE, workflow.run_by_id, and annotation_reply.toggle |
Risk is policy input, not authorization. Medium and high mutations both require approval and idempotency.
Apply approval, idempotency, and retry
| Contract | Catalogue read | Catalogue mutation | App invocation alias |
|---|---|---|---|
| Approval | No | Required | Required for workflow and agent-family modes |
| Idempotency key | Optional | Required | Required |
| Key scope | Tenant | Tenant | Tenant |
| Collision behavior | Revalidate input hash | Revalidate input hash | Revalidate input hash |
| Published TTL | 86400000 ms | 86400000 ms | 86400000 ms |
| Connector retry support | Yes | No | No |
| Retry safety | Safe | Unsafe | Unsafe |
Catalogue approval uses tenant policy for 900,000 ms and requires a reason,
input snapshot, and policy decision. The absence of connector-required approval
on plain chat or completion aliases does not override deployment policy.
An idempotency key identifies one intent. It does not prove that Dify deduplicates every route, stream, model invocation, or mutation. Preserve the same Action and inspect provider state after an uncertain outcome.
Understand execution and response transport
| Response kind | Count | AIP result |
|---|---|---|
| JSON or UTF-8 | 74 | HTTP status, decoded body, optional content type and provider request ID |
| Binary | 3 | HTTP status, base64 content, content type, size, and optional request ID |
| Server-sent events | 2 | Bounded event handling and normalized result |
The two catalogue SSE operations are workflow.run_by_id and
workflow.event.stream. The three binary operations are file.preview,
audio.synthesize, and document.download_zip.
Six operations use multipart input: file.upload, audio.transcribe, three
document upload or update operations, and pipeline.file.upload. Every other
frozen operation uses path, query, and optional JSON input.
App invocation aliases separately support sync, async, streaming, and cancellation. Catalogue support is operation-specific.
Apply data and compensation rules
All 79 frozen operations and every app alias declare:
- confidential data;
- possible personal information;
- required redaction;
- external network side effects.
Reads add a read side effect. Mutations add a write side effect, require
approval and a key, and declare rollback_not_supported with no compensating
capability. The connector publishes no transaction or reconciliation support.
Use the machine snapshot
The JSON asset contains source and upstream identities, aggregate counts, the app-alias contract, and one ordered record for every frozen operation. Each record includes ID template, family, scope, route, user placement, encoding, transport, supported modes, kind, risk, approval, idempotency, execution, data, and compensation.
Its reviewed SHA-256 is:
7884f23e2abce41ea14e869d4202f497a2294ae931facd7917467624a7fc6019
The snapshot is a source-derived review artifact. It does not prove registry admission, tenant authorization, artifact qualification, or live Dify compatibility.
Choose the next page
- Use
app-metadata-and-files.mdfor app discovery, end users, upload, and preview. - Use
chat-messages-conversations-and-feedback.mdfor chat history and state. - Use
workflows-streaming-and-human-input.mdfor remote tasks and forms. - Use
audio.mdandannotations.mdfor their app-specific domains. - Use the five
knowledge-*.mdpages for workspace datasets, documents, chunks, metadata, models, and pipelines.