556 lines
20 KiB
JSON
556 lines
20 KiB
JSON
{
|
|
"name": "RetrieveInvoices",
|
|
"fully_qualified_name": "XeroApi.RetrieveInvoices@0.1.0",
|
|
"description": "Retrieve sales invoices or purchase bills from Xero.\n\nUse this tool to retrieve detailed information about sales invoices or purchase bills from Xero.",
|
|
"toolkit": {
|
|
"name": "ArcadeXeroApi",
|
|
"description": null,
|
|
"version": "0.1.0"
|
|
},
|
|
"input": {
|
|
"parameters": [
|
|
{
|
|
"name": "xero_tenant_id",
|
|
"required": true,
|
|
"description": "Unique identifier for a Xero tenant to retrieve invoices specific to that tenant.",
|
|
"value_schema": {
|
|
"val_type": "string",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Xero identifier for Tenant"
|
|
},
|
|
"inferrable": true,
|
|
"http_endpoint_parameter_name": "xero-tenant-id"
|
|
},
|
|
{
|
|
"name": "filter_by_condition",
|
|
"required": false,
|
|
"description": "Filter using a condition expression defined on any element, similar to a SQL WHERE clause.",
|
|
"value_schema": {
|
|
"val_type": "string",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Filter by an any element"
|
|
},
|
|
"inferrable": true,
|
|
"http_endpoint_parameter_name": "where"
|
|
},
|
|
{
|
|
"name": "order_by",
|
|
"required": false,
|
|
"description": "Specify the criteria for ordering invoices, such as date or amount.",
|
|
"value_schema": {
|
|
"val_type": "string",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Order by an any element"
|
|
},
|
|
"inferrable": true,
|
|
"http_endpoint_parameter_name": "order"
|
|
},
|
|
{
|
|
"name": "invoice_ids",
|
|
"required": false,
|
|
"description": "Comma-separated list of Invoice IDs to filter results.",
|
|
"value_schema": {
|
|
"val_type": "array",
|
|
"inner_val_type": "string",
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Filter by a comma-separated list of InvoicesIDs."
|
|
},
|
|
"inferrable": true,
|
|
"http_endpoint_parameter_name": "IDs"
|
|
},
|
|
{
|
|
"name": "filter_by_invoice_numbers",
|
|
"required": false,
|
|
"description": "Filter results by providing a list of invoice numbers. Each item should be a string representing one invoice number.",
|
|
"value_schema": {
|
|
"val_type": "array",
|
|
"inner_val_type": "string",
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Filter by a comma-separated list of InvoiceNumbers."
|
|
},
|
|
"inferrable": true,
|
|
"http_endpoint_parameter_name": "InvoiceNumbers"
|
|
},
|
|
{
|
|
"name": "filter_contact_ids",
|
|
"required": false,
|
|
"description": "Comma-separated list of ContactIDs to filter invoices.",
|
|
"value_schema": {
|
|
"val_type": "array",
|
|
"inner_val_type": "string",
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Filter by a comma-separated list of ContactIDs."
|
|
},
|
|
"inferrable": true,
|
|
"http_endpoint_parameter_name": "ContactIDs"
|
|
},
|
|
{
|
|
"name": "filter_by_statuses",
|
|
"required": false,
|
|
"description": "Filter invoices by a list of statuses for improved response times. Use explicit parameters instead of OR conditions.",
|
|
"value_schema": {
|
|
"val_type": "array",
|
|
"inner_val_type": "string",
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Filter by a comma-separated list Statuses. For faster response times we recommend using these explicit parameters instead of passing OR conditions into the Where filter."
|
|
},
|
|
"inferrable": true,
|
|
"http_endpoint_parameter_name": "Statuses"
|
|
},
|
|
{
|
|
"name": "page_number",
|
|
"required": false,
|
|
"description": "Specify the page number to retrieve. Up to 100 invoices per page can be returned.",
|
|
"value_schema": {
|
|
"val_type": "integer",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "e.g. page=1 \u2013 Up to 100 invoices will be returned in a single API call with line items shown for each invoice"
|
|
},
|
|
"inferrable": true,
|
|
"http_endpoint_parameter_name": "page"
|
|
},
|
|
{
|
|
"name": "unit_decimal_places",
|
|
"required": false,
|
|
"description": "Specify the number of decimal places for unit amounts, e.g., 4 for four decimal places.",
|
|
"value_schema": {
|
|
"val_type": "integer",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "e.g. unitdp=4 \u2013 (Unit Decimal Places) You can opt in to use four decimal places for unit amounts"
|
|
},
|
|
"inferrable": true,
|
|
"http_endpoint_parameter_name": "unitdp"
|
|
},
|
|
{
|
|
"name": "records_per_page",
|
|
"required": false,
|
|
"description": "Specify the number of invoice records to retrieve per page.",
|
|
"value_schema": {
|
|
"val_type": "integer",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Number of records to retrieve per page"
|
|
},
|
|
"inferrable": true,
|
|
"http_endpoint_parameter_name": "pageSize"
|
|
},
|
|
{
|
|
"name": "search_term",
|
|
"required": false,
|
|
"description": "A case-insensitive search parameter for fields like InvoiceNumber and Reference.",
|
|
"value_schema": {
|
|
"val_type": "string",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Search parameter that performs a case-insensitive text search across the fields e.g. InvoiceNumber, Reference."
|
|
},
|
|
"inferrable": true,
|
|
"http_endpoint_parameter_name": "searchTerm"
|
|
},
|
|
{
|
|
"name": "modified_since_timestamp",
|
|
"required": false,
|
|
"description": "Return only records created or modified since this timestamp. Use the format 'YYYY-MM-DDTHH:MM:SS'.",
|
|
"value_schema": {
|
|
"val_type": "string",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Only records created or modified since this timestamp will be returned"
|
|
},
|
|
"inferrable": true,
|
|
"http_endpoint_parameter_name": "If-Modified-Since"
|
|
},
|
|
{
|
|
"name": "include_archived_invoices",
|
|
"required": false,
|
|
"description": "Set to true to include invoices with a status of ARCHIVED in the response.",
|
|
"value_schema": {
|
|
"val_type": "boolean",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "e.g. includeArchived=true - Invoices with a status of ARCHIVED will be included in the response"
|
|
},
|
|
"inferrable": true,
|
|
"http_endpoint_parameter_name": "includeArchived"
|
|
},
|
|
{
|
|
"name": "filter_by_created_by_my_app",
|
|
"required": false,
|
|
"description": "Set to true to retrieve only invoices created by your app.",
|
|
"value_schema": {
|
|
"val_type": "boolean",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "When set to true you'll only retrieve Invoices created by your app"
|
|
},
|
|
"inferrable": true,
|
|
"http_endpoint_parameter_name": "createdByMyApp"
|
|
},
|
|
{
|
|
"name": "retrieve_summary_only",
|
|
"required": false,
|
|
"description": "Set to true to retrieve a smaller, lightweight version of the response for quicker API calls, excluding computation-heavy fields.",
|
|
"value_schema": {
|
|
"val_type": "boolean",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Use summaryOnly=true in GET Contacts and Invoices endpoint to retrieve a smaller version of the response object. This returns only lightweight fields, excluding computation-heavy fields from the response, making the API calls quick and efficient."
|
|
},
|
|
"inferrable": true,
|
|
"http_endpoint_parameter_name": "summaryOnly"
|
|
}
|
|
]
|
|
},
|
|
"output": {
|
|
"description": "Response from the API endpoint 'getInvoices'.",
|
|
"available_modes": [
|
|
"value",
|
|
"error",
|
|
"null"
|
|
],
|
|
"value_schema": {
|
|
"val_type": "json",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": null
|
|
}
|
|
},
|
|
"requirements": {
|
|
"authorization": {
|
|
"provider_id": "arcade-xero",
|
|
"provider_type": "oauth2",
|
|
"id": null,
|
|
"oauth2": {
|
|
"scopes": [
|
|
"accounting.transactions.read",
|
|
"accounting.transactions"
|
|
]
|
|
}
|
|
},
|
|
"secrets": null,
|
|
"metadata": null
|
|
},
|
|
"deprecation_message": null,
|
|
"metadata": {
|
|
"object_type": "api_wrapper_tool",
|
|
"version": "1.0.0",
|
|
"description": "Tools that enable LLMs to interact directly with the Xero API."
|
|
},
|
|
"http_endpoint": {
|
|
"metadata": {
|
|
"object_type": "http_endpoint",
|
|
"version": "1.0.0",
|
|
"description": ""
|
|
},
|
|
"url": "https://api.xero.com/api.xro/2.0/Invoices",
|
|
"http_method": "GET",
|
|
"headers": {
|
|
"Accept": "application/json"
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "where",
|
|
"tool_parameter_name": "filter_by_condition",
|
|
"description": "Filter by an any element",
|
|
"value_schema": {
|
|
"val_type": "string",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Filter by an any element"
|
|
},
|
|
"accepted_as": "query",
|
|
"required": false,
|
|
"deprecated": false,
|
|
"documentation_urls": []
|
|
},
|
|
{
|
|
"name": "order",
|
|
"tool_parameter_name": "order_by",
|
|
"description": "Order by an any element",
|
|
"value_schema": {
|
|
"val_type": "string",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Order by an any element"
|
|
},
|
|
"accepted_as": "query",
|
|
"required": false,
|
|
"deprecated": false,
|
|
"documentation_urls": []
|
|
},
|
|
{
|
|
"name": "IDs",
|
|
"tool_parameter_name": "invoice_ids",
|
|
"description": "Filter by a comma-separated list of InvoicesIDs.",
|
|
"value_schema": {
|
|
"val_type": "array",
|
|
"inner_val_type": "string",
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Filter by a comma-separated list of InvoicesIDs."
|
|
},
|
|
"accepted_as": "query",
|
|
"required": false,
|
|
"deprecated": false,
|
|
"documentation_urls": []
|
|
},
|
|
{
|
|
"name": "InvoiceNumbers",
|
|
"tool_parameter_name": "filter_by_invoice_numbers",
|
|
"description": "Filter by a comma-separated list of InvoiceNumbers.",
|
|
"value_schema": {
|
|
"val_type": "array",
|
|
"inner_val_type": "string",
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Filter by a comma-separated list of InvoiceNumbers."
|
|
},
|
|
"accepted_as": "query",
|
|
"required": false,
|
|
"deprecated": false,
|
|
"documentation_urls": []
|
|
},
|
|
{
|
|
"name": "ContactIDs",
|
|
"tool_parameter_name": "filter_contact_ids",
|
|
"description": "Filter by a comma-separated list of ContactIDs.",
|
|
"value_schema": {
|
|
"val_type": "array",
|
|
"inner_val_type": "string",
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Filter by a comma-separated list of ContactIDs."
|
|
},
|
|
"accepted_as": "query",
|
|
"required": false,
|
|
"deprecated": false,
|
|
"documentation_urls": []
|
|
},
|
|
{
|
|
"name": "Statuses",
|
|
"tool_parameter_name": "filter_by_statuses",
|
|
"description": "Filter by a comma-separated list Statuses. For faster response times we recommend using these explicit parameters instead of passing OR conditions into the Where filter.",
|
|
"value_schema": {
|
|
"val_type": "array",
|
|
"inner_val_type": "string",
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Filter by a comma-separated list Statuses. For faster response times we recommend using these explicit parameters instead of passing OR conditions into the Where filter."
|
|
},
|
|
"accepted_as": "query",
|
|
"required": false,
|
|
"deprecated": false,
|
|
"documentation_urls": []
|
|
},
|
|
{
|
|
"name": "page",
|
|
"tool_parameter_name": "page_number",
|
|
"description": "e.g. page=1 \u2013 Up to 100 invoices will be returned in a single API call with line items shown for each invoice",
|
|
"value_schema": {
|
|
"val_type": "integer",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "e.g. page=1 \u2013 Up to 100 invoices will be returned in a single API call with line items shown for each invoice"
|
|
},
|
|
"accepted_as": "query",
|
|
"required": false,
|
|
"deprecated": false,
|
|
"documentation_urls": []
|
|
},
|
|
{
|
|
"name": "includeArchived",
|
|
"tool_parameter_name": "include_archived_invoices",
|
|
"description": "e.g. includeArchived=true - Invoices with a status of ARCHIVED will be included in the response",
|
|
"value_schema": {
|
|
"val_type": "boolean",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "e.g. includeArchived=true - Invoices with a status of ARCHIVED will be included in the response"
|
|
},
|
|
"accepted_as": "query",
|
|
"required": false,
|
|
"deprecated": false,
|
|
"documentation_urls": []
|
|
},
|
|
{
|
|
"name": "createdByMyApp",
|
|
"tool_parameter_name": "filter_by_created_by_my_app",
|
|
"description": "When set to true you'll only retrieve Invoices created by your app",
|
|
"value_schema": {
|
|
"val_type": "boolean",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "When set to true you'll only retrieve Invoices created by your app"
|
|
},
|
|
"accepted_as": "query",
|
|
"required": false,
|
|
"deprecated": false,
|
|
"documentation_urls": []
|
|
},
|
|
{
|
|
"name": "unitdp",
|
|
"tool_parameter_name": "unit_decimal_places",
|
|
"description": "e.g. unitdp=4 \u2013 (Unit Decimal Places) You can opt in to use four decimal places for unit amounts",
|
|
"value_schema": {
|
|
"val_type": "integer",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "e.g. unitdp=4 \u2013 (Unit Decimal Places) You can opt in to use four decimal places for unit amounts"
|
|
},
|
|
"accepted_as": "query",
|
|
"required": false,
|
|
"deprecated": false,
|
|
"documentation_urls": []
|
|
},
|
|
{
|
|
"name": "summaryOnly",
|
|
"tool_parameter_name": "retrieve_summary_only",
|
|
"description": "Use summaryOnly=true in GET Contacts and Invoices endpoint to retrieve a smaller version of the response object. This returns only lightweight fields, excluding computation-heavy fields from the response, making the API calls quick and efficient.",
|
|
"value_schema": {
|
|
"val_type": "boolean",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Use summaryOnly=true in GET Contacts and Invoices endpoint to retrieve a smaller version of the response object. This returns only lightweight fields, excluding computation-heavy fields from the response, making the API calls quick and efficient."
|
|
},
|
|
"accepted_as": "query",
|
|
"required": false,
|
|
"deprecated": false,
|
|
"documentation_urls": []
|
|
},
|
|
{
|
|
"name": "pageSize",
|
|
"tool_parameter_name": "records_per_page",
|
|
"description": "Number of records to retrieve per page",
|
|
"value_schema": {
|
|
"val_type": "integer",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Number of records to retrieve per page"
|
|
},
|
|
"accepted_as": "query",
|
|
"required": false,
|
|
"deprecated": false,
|
|
"documentation_urls": []
|
|
},
|
|
{
|
|
"name": "searchTerm",
|
|
"tool_parameter_name": "search_term",
|
|
"description": "Search parameter that performs a case-insensitive text search across the fields e.g. InvoiceNumber, Reference.",
|
|
"value_schema": {
|
|
"val_type": "string",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Search parameter that performs a case-insensitive text search across the fields e.g. InvoiceNumber, Reference."
|
|
},
|
|
"accepted_as": "query",
|
|
"required": false,
|
|
"deprecated": false,
|
|
"documentation_urls": []
|
|
},
|
|
{
|
|
"name": "xero-tenant-id",
|
|
"tool_parameter_name": "xero_tenant_id",
|
|
"description": "Xero identifier for Tenant",
|
|
"value_schema": {
|
|
"val_type": "string",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Xero identifier for Tenant"
|
|
},
|
|
"accepted_as": "header",
|
|
"required": true,
|
|
"deprecated": false,
|
|
"documentation_urls": []
|
|
},
|
|
{
|
|
"name": "If-Modified-Since",
|
|
"tool_parameter_name": "modified_since_timestamp",
|
|
"description": "Only records created or modified since this timestamp will be returned",
|
|
"value_schema": {
|
|
"val_type": "string",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "Only records created or modified since this timestamp will be returned"
|
|
},
|
|
"accepted_as": "header",
|
|
"required": false,
|
|
"deprecated": false,
|
|
"documentation_urls": []
|
|
}
|
|
],
|
|
"documentation_urls": [],
|
|
"secrets": [
|
|
{
|
|
"arcade_key": "auth_token",
|
|
"parameter_name": "Authorization",
|
|
"accepted_as": "header",
|
|
"formatted_value": "Bearer {authorization}",
|
|
"description": "The OAuth token to use for authentication.",
|
|
"is_auth_token": true
|
|
}
|
|
]
|
|
}
|
|
}
|