Skip to main content

Overview

The Aspire integration connects your agents to your Aspire field-service-management tenant. Agents can query Properties, Opportunities, Work Tickets, labor hours, Invoices, Contacts, Companies, Routes, Services and the rest of Aspire’s data, open the files attached in Aspire (signed contracts, proposals, photos), and build dashboards and scheduled reports on top. Agents you explicitly grant the write tool can also create and update records where Aspire’s API allows it.
This is Aspire by youraspire.com (landscape & field service management) — not Microsoft .NET Aspire and not the Aspire fintech product.

Prerequisites

  • An Aspire account with API access
  • An Aspire Client ID and Secret, generated in Aspire under Settings > Evolution Administration > Admin > API
  • An Aster admin to connect the integration (the connection is shared org-wide)

Setup Guide

1

Generate API credentials in Aspire

In Aspire, create an API credential and copy its Client ID and Secret. A read-only (GET) credential is enough for querying and downloading files. Only create one with write access if an agent will change Aspire records.
2

Connect Aspire in Aster Agents

Navigate to Control Hub > Integrations, locate the Aspire card, click Connect, and paste the Client ID and Secret. Aster validates them against Aspire (token exchange + a tenant lookup) and echoes back your tenant’s legal name on success. Aster handles token exchange and refresh from there.
3

Add Tools to Your Agent

Edit your agent and enable Aspire Get Schema, Aspire Query and, if it should open files, Aspire Get Attachments. Add Aspire Manage Records only to agents that should change Aspire.

Available Tools

  • Aspire Get Schema (aspire_get_schema) — Reads Aspire’s live API definition. With no arguments it lists every collection. With a collection name it returns that collection’s fields, the related collections it can bring in alongside, and whether Aspire allows creating or updating it. With a search term (for example “renewal”) it finds matching fields across every collection.
  • Aspire Query (aspire_query) — Reads any Aspire collection with OData select, filter, expand and orderby. Pages are fetched in parallel, so tens of thousands of records come back in seconds. The full result is always saved as a CSV file the agent analyzes with Python (plus a JSON file when related records are included), and only a short preview appears in the conversation.
  • Aspire Get Attachments (aspire_get_attachments) — Downloads up to 25 files attached in Aspire per call (contracts, proposals, photos, notices), each with the opportunity, property and type it belongs to. The agent can then read them, for example to check a signed contract against the dates and amounts on its opportunity.
  • Aspire Manage Records (aspire_manage_records) — Creates, updates or deletes records where Aspire’s API allows it. Grant it only to agents that should change Aspire, and use a credential with write access.

Example Prompts

Once connected, agents can answer questions like:
  • “Which maintenance contracts end in the next 90 days, and what are they worth?”
  • “Invoiced revenue by property this year, with the opportunities each invoice billed.”
  • “Labor hours against estimate on every open construction job.”
  • “Which won contracts have no signed agreement attached? Open the ones that do and check the end dates match.”
  • “Build me a dashboard of open bids by rep that refreshes every morning.”

Notes & Limitations

  • Select the fields you need. Aspire’s speed depends on how much data each record carries: a page of complete opportunity records takes about 10 seconds, the same page with a handful of fields well under one. Agents are guided to do this automatically.
  • Related records come in through expand, and Aspire requires each one to name its own fields, for example InvoiceOpportunities($select=OpportunityID). Aspire Get Schema shows the exact form for each collection.
  • No totals in the query. Aspire does not allow $count or group-by queries, so agents count and total in Python over the saved file.
  • Some records can’t be edited through the API. Aspire’s API does not allow updating existing Opportunities, for example. Those changes are made in Aspire’s own screens, and the agent will say so.
  • No webhooks — Aspire has no push mechanism, so agents poll. For scheduled monitoring, match your task cadence to how fresh you need the data.
  • Single environment — Aspire has no sandbox; credentials point at your live tenant. A read-only credential makes the connection safe by construction.

Security Considerations

  • Org-level connection — one admin connects once for the whole organization. The Secret and tokens are stored server-side and redacted when the connection is read back in the UI.
  • Least privilege — use a read-only Aspire credential unless an agent genuinely needs to write, and grant Aspire Manage Records only to those agents.
  • Files stay in the conversation — downloaded attachments are stored with the conversation that requested them.
  • Rotate credentials periodically in Aspire and reconnect.

Troubleshooting

  • Double-check the Client ID and Secret were copied exactly from Aspire.
  • Confirm API access is enabled on your Aspire account.
  • Run Aspire Get Schema to confirm the exact collection and field names — they’re case-sensitive.
  • Loosen your filter; an over-narrow expression can legitimately match nothing.
  • Make sure the query selects only the fields it needs. That is the biggest factor in Aspire’s speed.
  • Very large pulls stop after about two and a half minutes and say where to continue (next_skip), so nothing is silently cut off.
  • Run Code — analyze the saved Aspire files with pandas.