Spaces:
Running
Running
{ | |
"weather_forecast": { | |
"display_name": "API Automation - Weather Forecast", | |
"description": "Agora enables two machines that do not support the same API to communicate with each other. In this example, Alice requests a weather forecast for a specific location and date from Bob's weather service.", | |
"schema": { | |
"input": { | |
"type": "object", | |
"properties": { | |
"location": { | |
"type": "string", | |
"description": "The name of the location for which the weather forecast is requested." | |
}, | |
"date": { | |
"type": "string", | |
"format": "date", | |
"description": "The date for which the weather forecast is requested, in YYYY-MM-DD format." | |
} | |
}, | |
"required": [ | |
"location", | |
"date" | |
] | |
}, | |
"output": { | |
"type": "object", | |
"properties": { | |
"temperature": { | |
"type": "number", | |
"description": "The forecasted temperature in degrees Celsius." | |
}, | |
"condition": { | |
"type": "string", | |
"description": "A brief description of the weather condition (e.g., sunny, cloudy, rainy)." | |
}, | |
"humidity": { | |
"type": "number", | |
"description": "The forecasted humidity percentage." | |
}, | |
"wind_speed": { | |
"type": "number", | |
"description": "The forecasted wind speed in kilometers per hour." | |
} | |
}, | |
"required": [ | |
"temperature", | |
"condition", | |
"humidity", | |
"wind_speed" | |
] | |
}, | |
"description": "Alice requests a weather forecast for a specific location and date from Bob's weather service.", | |
"examples": [ | |
{ | |
"location": "New York", | |
"date": "2023-10-15" | |
}, | |
{ | |
"location": "London", | |
"date": "2023-11-01" | |
} | |
], | |
"tools": [ | |
{ | |
"name": "WeatherForecastAPI", | |
"description": "An API that provides weather forecasts for a given location and date.", | |
"input": { | |
"type": "object", | |
"properties": { | |
"location": { | |
"type": "string", | |
"description": "The name of the location for which the weather forecast is requested." | |
}, | |
"date": { | |
"type": "string", | |
"format": "date", | |
"description": "The date for which the weather forecast is requested, in YYYY-MM-DD format." | |
} | |
}, | |
"required": [ | |
"location", | |
"date" | |
] | |
}, | |
"output": { | |
"type": "object", | |
"properties": { | |
"temperature": { | |
"type": "number", | |
"description": "The forecasted temperature in degrees Celsius." | |
}, | |
"condition": { | |
"type": "string", | |
"description": "A brief description of the weather condition (e.g., sunny, cloudy, rainy)." | |
}, | |
"humidity": { | |
"type": "number", | |
"description": "The forecasted humidity percentage." | |
}, | |
"wind_speed": { | |
"type": "number", | |
"description": "The forecasted wind speed in kilometers per hour." | |
} | |
}, | |
"required": [ | |
"temperature", | |
"condition", | |
"humidity", | |
"wind_speed" | |
] | |
}, | |
"dummy_outputs": [ | |
{ | |
"temperature": 18, | |
"condition": "Sunny", | |
"humidity": 55, | |
"wind_speed": 10 | |
}, | |
{ | |
"temperature": 12, | |
"condition": "Cloudy", | |
"humidity": 80, | |
"wind_speed": 15 | |
} | |
] | |
} | |
] | |
} | |
}, | |
"restaurant": { | |
"display_name": "Personal Assistant - Restaurant Booking", | |
"description": "Agora can be used for personal assistant tasks: any Agora-powered agent can communicate with any Agora-powered agent, even if they have very different internal schemas. In this example, Alice requests a table reservation at a restaurant for a specific date, time, and party size from Bob's restaurant.", | |
"schema": { | |
"input": { | |
"type": "object", | |
"properties": { | |
"restaurant": { | |
"type": "string", | |
"description": "The name of the restaurant for the reservation." | |
}, | |
"booking_date": { | |
"type": "string", | |
"format": "date", | |
"description": "The date of the reservation in YYYY-MM-DD format." | |
}, | |
"party_size": { | |
"type": "number", | |
"description": "The number of guests for the table booking." | |
}, | |
"booking_time": { | |
"type": "string", | |
"format": "time", | |
"description": "The desired reservation time in HH:MM format (24-hour time)." | |
} | |
}, | |
"required": [ | |
"restaurant", | |
"booking_date", | |
"party_size", | |
"booking_time" | |
] | |
}, | |
"output": { | |
"type": "object", | |
"properties": { | |
"reservation_id": { | |
"type": "string", | |
"description": "The confirmation number for the reservation." | |
}, | |
"reservation_status": { | |
"type": "string", | |
"description": "The reservation status (e.g., confirmed, pending, or declined)." | |
} | |
}, | |
"required": [ | |
"reservation_id", | |
"reservation_status" | |
] | |
}, | |
"description": "Alice requests a table reservation at a restaurant for a specific date, time, and party size from Bob's booking service.", | |
"examples": [ | |
{ | |
"restaurant": "The Green Olive", | |
"booking_date": "2023-12-15", | |
"booking_time": "19:00", | |
"party_size": 4 | |
}, | |
{ | |
"restaurant": "Ocean's Delight", | |
"booking_date": "2023-12-20", | |
"booking_time": "18:30", | |
"party_size": 2 | |
} | |
], | |
"tools": [ | |
{ | |
"name": "TableReservationAPI", | |
"description": "An API that facilitates restaurant table reservations based on requested details.", | |
"input": { | |
"type": "object", | |
"properties": { | |
"venue_name": { | |
"type": "string", | |
"description": "The restaurant name." | |
}, | |
"date": { | |
"type": "string", | |
"format": "date", | |
"description": "The reservation date, formatted as YYYY-MM-DD." | |
}, | |
"time": { | |
"type": "string", | |
"format": "time", | |
"description": "The time for the reservation, formatted as HH:MM (24-hour time)." | |
}, | |
"guest_count": { | |
"type": "number", | |
"description": "The number of guests for the reservation." | |
} | |
}, | |
"required": [ | |
"venue_name", | |
"date", | |
"time", | |
"guest_count" | |
] | |
}, | |
"output": { | |
"type": "object", | |
"properties": { | |
"confirmation_code": { | |
"type": "string", | |
"description": "The unique confirmation number for the booking." | |
}, | |
"status": { | |
"type": "string", | |
"description": "The reservation outcome (e.g., confirmed, pending, declined)." | |
} | |
}, | |
"required": [ | |
"confirmation_code", | |
"status" | |
] | |
}, | |
"dummy_outputs": [ | |
{ | |
"confirmation_code": "ABC12345", | |
"status": "confirmed" | |
}, | |
{ | |
"confirmation_code": "XYZ67890", | |
"status": "pending" | |
} | |
] | |
} | |
] | |
} | |
}, | |
"customer_service": { | |
"display_name": "Business Integration - Customer Service Tickets", | |
"description": "Agora can be used to integrate different systems within a business. In this example, Alice is a customer service frontend that communicates with an in-house ticket tracking system.", | |
"schema": { | |
"input": { | |
"type": "object", | |
"properties": { | |
"external_ticket_id": { | |
"type": "string", | |
"description": "The unique identifier for the customer service ticket in the external system." | |
}, | |
"summary": { | |
"type": "string", | |
"description": "A brief summary of the issue reported in the ticket." | |
}, | |
"description": { | |
"type": "string", | |
"description": "A detailed description of the issue provided by the customer." | |
}, | |
"priority": { | |
"type": "string", | |
"description": "The priority level of the ticket (e.g., low, medium, high, urgent)." | |
}, | |
"created_date": { | |
"type": "string", | |
"format": "date-time", | |
"description": "The timestamp when the ticket was created in the external system." | |
} | |
}, | |
"required": [ | |
"external_ticket_id", | |
"summary", | |
"description", | |
"priority", | |
"created_date" | |
] | |
}, | |
"output": { | |
"type": "object", | |
"properties": { | |
"internal_ticket_id": { | |
"type": "string", | |
"description": "The unique identifier for the ticket created in the in-house tracking system." | |
}, | |
"status": { | |
"type": "string", | |
"description": "The current status of the integration task (e.g., success, failed)." | |
} | |
}, | |
"required": [ | |
"internal_ticket_id", | |
"status" | |
] | |
}, | |
"description": "Integrate a customer service ticket from an external system into an in-house ticket tracking database.", | |
"examples": [ | |
{ | |
"external_ticket_id": "EXT123456", | |
"summary": "User unable to access account", | |
"description": "Customer reports being locked out of their account after password reset.", | |
"priority": "high", | |
"created_date": "2023-11-10T15:45:00Z" | |
}, | |
{ | |
"external_ticket_id": "EXT654321", | |
"summary": "Error on checkout page", | |
"description": "Customer encounters an error when attempting to finalize purchase.", | |
"priority": "urgent", | |
"created_date": "2023-11-11T09:30:00Z" | |
} | |
], | |
"tools": [ | |
{ | |
"name": "TicketIntegrationAPI", | |
"description": "An API for creating tickets in an in-house tracking system based on external ticket data.", | |
"input": { | |
"type": "object", | |
"properties": { | |
"source_ticket_id": { | |
"type": "string", | |
"description": "The ID of the ticket in the external system." | |
}, | |
"title": { | |
"type": "string", | |
"description": "A concise title summarizing the ticket issue." | |
}, | |
"details": { | |
"type": "string", | |
"description": "Detailed information regarding the ticket issue." | |
}, | |
"urgency": { | |
"type": "string", | |
"description": "The urgency level of the ticket (e.g., low, medium, high, urgent)." | |
}, | |
"opened_at": { | |
"type": "string", | |
"format": "date-time", | |
"description": "Timestamp indicating when the ticket was opened in the external system." | |
} | |
}, | |
"required": [ | |
"source_ticket_id", | |
"title", | |
"details", | |
"urgency", | |
"opened_at" | |
] | |
}, | |
"output": { | |
"type": "object", | |
"properties": { | |
"inhouse_ticket_id": { | |
"type": "string", | |
"description": "The ID of the created ticket in the in-house system." | |
}, | |
"integration_status": { | |
"type": "string", | |
"description": "The outcome of the integration attempt (e.g., success, failure, duplicate)." | |
} | |
}, | |
"required": [ | |
"inhouse_ticket_id", | |
"integration_status" | |
] | |
}, | |
"dummy_outputs": [ | |
{ | |
"inhouse_ticket_id": "IN123456", | |
"integration_status": "success" | |
}, | |
{ | |
"inhouse_ticket_id": "IN654321", | |
"integration_status": "duplicate" | |
} | |
] | |
} | |
] | |
} | |
}, | |
"smart_home": { | |
"display_name": "Smart Homes - Thermostat Control", | |
"description": "Agora can be used to automate tasks in smart homes, even if the devices are not natively compatible. In this example, Alice is a thermostat that communicates with an air conditioner unit to maintain a specified temperature range.", | |
"schema": { | |
"input": { | |
"type": "object", | |
"properties": { | |
"ac_unit_id": { | |
"type": "string", | |
"description": "The unique identifier for the air conditioner unit that will receive commands from the thermostat." | |
}, | |
"target_temperature": { | |
"type": "number", | |
"description": "The desired room temperature to be maintained in degrees Celsius." | |
}, | |
"temperature_min": { | |
"type": "number", | |
"description": "The minimum allowable room temperature (in \u00b0C) before activating cooling." | |
}, | |
"temperature_max": { | |
"type": "number", | |
"description": "The maximum allowable room temperature (in \u00b0C) before activating cooling." | |
}, | |
"monitor_interval": { | |
"type": "number", | |
"description": "The frequency in seconds at which the thermostat checks the current room temperature." | |
} | |
}, | |
"required": [ | |
"ac_unit_id", | |
"target_temperature", | |
"temperature_range", | |
"monitor_interval", | |
"temperature_min", | |
"temperature_max" | |
] | |
}, | |
"output": { | |
"type": "object", | |
"properties": { | |
"task_id": { | |
"type": "string", | |
"description": "The unique identifier for this monitoring and control task." | |
}, | |
"communication_status": { | |
"type": "string", | |
"description": "The status of the communication with the AC unit (e.g., active, error, completed)." | |
} | |
}, | |
"required": [ | |
"task_id", | |
"communication_status" | |
] | |
}, | |
"description": "Thermostat monitors room temperature and communicates with the AC unit to maintain a specified temperature range.", | |
"examples": [ | |
{ | |
"ac_unit_id": "ac456", | |
"target_temperature": 22, | |
"temperature_min": 21, | |
"temperature_max": 23, | |
"monitor_interval": 60 | |
}, | |
{ | |
"ac_unit_id": "ac101", | |
"target_temperature": 20, | |
"temperature_min": 19, | |
"temperature_max": 21, | |
"monitor_interval": 120 | |
} | |
], | |
"tools": [ | |
{ | |
"name": "ACControlAPI", | |
"description": "An API used by the thermostat to send commands to the air conditioner to adjust its settings based on the current room temperature.", | |
"input": { | |
"type": "object", | |
"properties": { | |
"device_id": { | |
"type": "string", | |
"description": "The ID of the air conditioner receiving temperature control commands." | |
}, | |
"temperature_setting": { | |
"type": "number", | |
"description": "The target temperature the AC should aim to achieve." | |
}, | |
"temp_range_min": { | |
"type": "number", | |
"description": "The minimum allowable room temperature (in \u00b0C) before activating cooling." | |
}, | |
"temp_range_max": { | |
"type": "number", | |
"description": "The maximum allowable room temperature (in \u00b0C) before activating cooling." | |
} | |
}, | |
"required": [ | |
"device_id", | |
"temperature_setting", | |
"temp_range_min", | |
"temp_range_max" | |
] | |
}, | |
"output": { | |
"type": "object", | |
"properties": { | |
"control_task_id": { | |
"type": "string", | |
"description": "The unique identifier for the temperature control task." | |
}, | |
"status": { | |
"type": "string", | |
"description": "The result of the control task setup (e.g., active, failed, adjusting)." | |
} | |
}, | |
"required": [ | |
"control_task_id", | |
"status" | |
] | |
}, | |
"dummy_outputs": [ | |
{ | |
"control_task_id": "CTRL001", | |
"status": "active" | |
}, | |
{ | |
"control_task_id": "CTRL002", | |
"status": "failed" | |
} | |
] | |
} | |
] | |
} | |
}, | |
"supply_chain": { | |
"display_name": "Supply Chain Management - Inventory Alerts", | |
"description": "Agora can be used to manage supply chain systems across different vendors. In this example, Alice is an inventory management system that communicates with an off-site storage facility to set a restocking order.", | |
"schema": { | |
"input": { | |
"type": "object", | |
"properties": { | |
"item_id": { | |
"type": "string", | |
"description": "The unique identifier for the item in the inventory." | |
}, | |
"low_stock_threshold": { | |
"type": "number", | |
"description": "The minimum quantity threshold for this item before a low stock alert is triggered." | |
}, | |
"restock_quantity": { | |
"type": "number", | |
"description": "The recommended quantity of the item to reorder when stock is low." | |
} | |
}, | |
"required": [ | |
"item_id", | |
"low_stock_threshold", | |
"restock_quantity" | |
] | |
}, | |
"output": { | |
"type": "object", | |
"properties": { | |
"alert_status": { | |
"type": "string", | |
"description": "The status of the stock level for this item based on its low stock threshold (e.g., 'sufficient', 'low')." | |
}, | |
"recommended_action": { | |
"type": "string", | |
"description": "The suggested action based on stock levels, such as 'order more' or 'monitor'." | |
} | |
}, | |
"required": [ | |
"alert_status", | |
"recommended_action" | |
] | |
}, | |
"description": "Manages the low stock threshold and restock quantities for items in the storage facility, allowing updates to thresholds and reorder recommendations.", | |
"examples": [ | |
{ | |
"item_id": "item123", | |
"low_stock_threshold": 20, | |
"restock_quantity": 50 | |
}, | |
{ | |
"item_id": "item456", | |
"low_stock_threshold": 10, | |
"restock_quantity": 30 | |
} | |
], | |
"tools": [ | |
{ | |
"name": "InventoryThresholdAPI", | |
"description": "An API that updates the low stock threshold and restock quantity for an item in the inventory system.", | |
"input": { | |
"type": "object", | |
"properties": { | |
"item_code": { | |
"type": "string", | |
"description": "The unique identifier for the item to update." | |
}, | |
"low_stock_level": { | |
"type": "number", | |
"description": "The updated threshold below which an item is considered low stock." | |
}, | |
"restock_level": { | |
"type": "number", | |
"description": "The updated recommended quantity to reorder when stock is low." | |
} | |
}, | |
"required": [ | |
"item_code", | |
"low_stock_level", | |
"restock_level" | |
] | |
}, | |
"output": { | |
"type": "object", | |
"properties": { | |
"status": { | |
"type": "string", | |
"description": "The outcome of the update action, indicating whether the thresholds were successfully updated." | |
}, | |
"new_alert_status": { | |
"type": "string", | |
"description": "The updated alert status based on the new threshold values (e.g., 'low', 'sufficient')." | |
} | |
}, | |
"required": [ | |
"status", | |
"new_alert_status" | |
] | |
}, | |
"dummy_outputs": [ | |
{ | |
"status": "success", | |
"new_alert_status": "low" | |
}, | |
{ | |
"status": "success", | |
"new_alert_status": "sufficient" | |
} | |
] | |
} | |
] | |
} | |
} | |
} |