Skip to main content

document-agents

Example File: document-agents​

{
"$schema": "https://open-resource-discovery.org/spec-v1/interfaces/Document.schema.json",
"openResourceDiscovery": "1.17",
"description": "Fulfillment application metadata. Dependencies reference resources published by the external Orders and Order Assistance providers.",
"perspective": "system-version",
"policyLevels": [],
"describedSystemVersion": {
"version": "1.0.0"
},
"apiResources": [
{
"ordId": "sap.foo:apiResource:FulfillmentAgent:v1",
"title": "Fulfillment Agent Interaction API",
"version": "1.0.0",
"releaseStatus": "active",
"visibility": "public",
"partOfPackage": "sap.foo:package:fulfillment:v1",
"shortDescription": "A2A interaction contract for the Fulfillment Agent",
"description": "Accepts fulfillment requests and returns task progress and outcomes.",
"apiProtocol": "a2a",
"aiHint": "Provide the order ID when requesting fulfillment. Check the task outcome before retrying a request that changes fulfillment status.",
"resourceDefinitions": [
{
"type": "a2a-agent-card",
"mediaType": "application/json",
"url": "/definitions/FulfillmentAgentcard.json",
"accessStrategies": [
{
"type": "open"
}
]
}
],
"exposedEntityTypes": [
{
"ordId": "foo.orders:entityType:Order:v1"
}
]
}
],
"agents": [
{
"ordId": "sap.foo:agent:fulfillmentAgent:v1",
"title": "Fulfillment Agent",
"version": "1.0.0",
"releaseStatus": "active",
"visibility": "public",
"partOfPackage": "sap.foo:package:fulfillment:v1",
"shortDescription": "Coordinates order fulfillment using external order tools, events, and optional skills",
"description": "Processes new orders, checks their details, and updates fulfillment status. Can use an external skill to summarize an order.",
"partOfProducts": [
"sap.foo:product:Fulfillment:"
],
"relatedEntityTypes": [
"foo.orders:entityType:Order:v1"
],
"exposedApiResources": [
{
"ordId": "sap.foo:apiResource:FulfillmentAgent:v1"
}
],
"integrationDependencies": [
"sap.foo:integrationDependency:OrderProcessing:v1",
"sap.foo:integrationDependency:OrderAssistance:v1"
],
"partOfGroups": [
"sap.foo:process:sap.foo:Fulfillment"
],
"labels": {
"sap.ai:interactionMode": [
"conversational",
"system-triggered"
]
},
"tags": [
"orders",
"fulfillment",
"ai-agent"
]
}
],
"capabilities": [
{
"ordId": "sap.foo:capability:fulfillmentWorkflow:v1",
"title": "Fulfillment Workflow",
"version": "1.0.0",
"releaseStatus": "active",
"visibility": "public",
"partOfPackage": "sap.foo:package:fulfillment:v1",
"shortDescription": "Coordinates requests to the Fulfillment Agent",
"type": "workflow",
"relatedApiResources": [
{
"ordId": "sap.foo:apiResource:FulfillmentAgent:v1",
"relationType": "ord:orchestrates"
}
],
"definitions": [
{
"type": "arazzo-v1",
"mediaType": "application/yaml",
"url": "/definitions/fulfillment.arazzo.yaml",
"accessStrategies": [
{
"type": "open"
}
]
}
]
}
],
"integrationDependencies": [
{
"ordId": "sap.foo:integrationDependency:OrderProcessing:v1",
"title": "Order Processing Integration",
"version": "1.0.0",
"releaseStatus": "active",
"visibility": "public",
"partOfPackage": "sap.foo:package:fulfillment:v1",
"shortDescription": "Order tools and events required by the Fulfillment Agent",
"mandatory": true,
"aspects": [
{
"description": "Read orders and update their fulfillment status",
"mandatory": true,
"apiResources": [
{
"ordId": "foo.orders:apiResource:OrderToolsMCPServer:v1",
"subset": [
{
"operationId": "searchOrders"
},
{
"operationId": "getOrder"
},
{
"operationId": "updateFulfillmentStatus"
}
]
}
]
},
{
"description": "React to newly created orders",
"mandatory": true,
"eventResources": [
{
"ordId": "foo.orders:eventResource:OrderCreated:v1"
}
]
}
]
},
{
"ordId": "sap.foo:integrationDependency:OrderAssistance:v1",
"title": "Order Assistance Integration",
"version": "1.0.0",
"releaseStatus": "active",
"visibility": "public",
"partOfPackage": "sap.foo:package:fulfillment:v1",
"shortDescription": "Optional order summarization through a standalone skill or a plugin",
"mandatory": false,
"aspects": [
{
"description": "Use either the standalone skill or the named skill in the plugin",
"mandatory": true,
"capabilities": [
{
"ordId": "foo.bar.skill:capability:orderSummarization:v1"
},
{
"ordId": "foo.bar:capability:orderManagementPlugin:v1",
"subset": [
{
"skillName": "orderSummarization"
}
]
}
]
}
]
}
],
"vendors": [
{
"ordId": "sap:vendor:SAP:",
"title": "SAP"
}
],
"products": [
{
"ordId": "sap.foo:product:Fulfillment:",
"title": "Fulfillment Application",
"shortDescription": "Example application for order fulfillment",
"vendor": "sap:vendor:SAP:"
}
],
"packages": [
{
"ordId": "sap.foo:package:fulfillment:v1",
"title": "Fulfillment Application",
"shortDescription": "Resources of the example Fulfillment application",
"description": "Contains the Agent, its interaction API, and its integration requirements.",
"version": "1.0.0",
"vendor": "sap:vendor:SAP:",
"partOfProducts": [
"sap.foo:product:Fulfillment:"
]
}
],
"groupTypes": [
{
"groupTypeId": "sap.foo:process",
"title": "Business Process"
}
],
"groups": [
{
"groupId": "sap.foo:process:sap.foo:Fulfillment",
"groupTypeId": "sap.foo:process",
"title": "Order Fulfillment"
}
]
}