# Datagran > Multi-product platform for marketing measurement, AI engagement, CRM, automation and learning. This index describes public product surfaces. It does not grant access or prove tenant availability. ## Start here - [Agent guide](/agent.txt): Workflow, permissions and safety rules - [Full AI-readable guide](/llms-full.txt): Combined guide and product summaries - [Structured resource catalog](/.well-known/datagran-products.json): Product map and links - [OpenAPI](/openapi.json): Specification for public discovery endpoints only - [Workspace OpenAPI](/openapi/workspaces.json): Authenticated tenant, project and native-grant discovery - [Tenant catalog OpenAPI](/openapi/catalog.json): Authenticated product and capability discovery - [Project status OpenAPI](/openapi/project-status.json): Selected-project saved status and authorized next reads - [Connections OpenAPI](/openapi/connections.json): Scoped connection status and reviewed provider checks - [Marketing read OpenAPI](/openapi/marketing.json): Reviewed, browser-session Ads and attribution reads only - [Creative OpenAPI](/openapi/creative.json): Project-scoped creative tools with separate human confirmation - [Intelligence OpenAPI](/openapi/intelligence.json): Authorized, read-only project Intelligence status - [Memory OpenAPI](/openapi/memory.json): Authorized, read-only project Memory status - [Observability OpenAPI](/openapi/observability.json): Authorized, read-only project trace metadata - [Documentation sitemap](/sitemap.md): Markdown page index - [Optional Home delegated read tools](https://home.datagran.io/.well-known/oauth-protected-resource/api/mcp): OAuth metadata for registered clients; requires user consent and exact tenant/project access ## Products and capabilities - [Ads and attribution](/docs/products/ads-attribution.md): Analyze Meta, Google and ChatGPT Ads performance and connect campaigns to leads and outcomes. - [Creative exploration](/docs/products/creative.md): Generate and review image, video and carousel variations for existing marketing destinations. - [Voice agents](/docs/products/voice-agents.md): Configure GPT Live agents for website chat, live voice and phone; enterprise voice has a managed setup path. - [CRM](/docs/products/crm.md): Manage customer records, relationships and sales stages in a project-scoped CRM. - [Inbox and follow-up automation](/docs/products/inbox-followups.md): Manage conversations and personal email outreach with researched prospects, reviewed drips, Billing and reply handoffs. - [Calendar](/docs/products/calendar.md): Connect a calendar, inspect availability and use the separately confirmed booking workflow. - [Connections](/docs/products/connections.md): Connect and assign external sources and channels to the correct tenant and project. - [Groovy harness](/docs/products/groovy.md): Build and operate advanced AI automations with Minds, tools, runs and approval boundaries. - [Intelligence and recursive learning](/docs/products/intelligence.md): Review project evidence, lead and source insights, knowledge and outcome-driven guidance. - [Memory and guardrails](/docs/products/memory-guardrails.md): Configure reusable knowledge and policies for authorized product agents. - [Tracing, observability and logs](/docs/products/observability.md): Inspect activity, traces, usage and operational evidence where authorized. - [Email outreach workflow](https://api.agents.datagran.io/v1/inbox/docs.md#email-outreach-in-automations): Public-source research, ZeroBounce verification, Sonnet personalization, reviewed batches of 10/20/50/100, five-email minimum, Billing, per-email tracking and Inbox reply handoff ## Authenticated discovery - `GET /api/platform/agent-workspaces`: Current actor's accessible tenants, projects and native feature grants. Ask for exact scope selection. - `GET /api/platform/agent-catalog?tenant_id={tenant_id}`: Selected tenant's saved product state, actor's project roles and available or planned capabilities. Verify execution separately. - `GET /api/platform/project-status?tenant_id={tenant_id}&project_id={project_id}`: Selected project's saved access, connection assignments and permission-filtered next reads. Provider readiness remains unverified. ## Tenant-administrator verification - `GET /api/platform/agent-connection-status?tenant_id={tenant_id}&project_id={project_id}`: Saved connection topology for the exact project. Requires a tenant administrator or Datagran superadmin; it does not probe providers or grant Calendar agent access. ## Signed-in setup pages - [Products](/dashboard/products): Inspect saved product access for the selected tenant and project. - [Enable products](/admin/products): Workspace administrators can request product setup. - [Assign product roles](/admin/product-access): Workspace administrators can grant a product role for an exact project. - [Connect Instagram or Messenger](/connections#social-messaging): Tenant administrators can choose the exact project and connect a customer channel. Verify provider and delivery state separately. - [Connect an email mailbox](/connections): In the Email section, tenant administrators connect Gmail or Microsoft, confirm the sender and project, and verify send/receive readiness before reviewing an outreach launch in Inbox Automations. --- # Datagran agent guide > Datagran spans marketing analytics and creative, voice, CRM, Inbox, connections, Calendar, Groovy, Intelligence and operational evidence. ## How to start 1. Read `/llms.txt` for a compact index and `/.well-known/datagran-products.json` for structured discovery. 2. Read only the relevant `/docs/products/{id}.md` pages. If a page lists product-owned discovery URLs, first verify a live anonymous 200 response and content type. Home has not checked their deployment; a 404 is not a grant or a working API. 3. For a new user, open [Sign up](/signup) and let the user complete identity, credentials and any provider consent. Then authenticate and determine the exact tenant and project; do not assume a shared account grants client access. If signup reports an existing account or an uncertain outcome, have the user try [Sign in](/login) with that email before submitting signup again. Do not blindly retry account creation. 4. With the current browser session, call `GET /api/platform/agent-workspaces`. If it lists more than one tenant or project, ask the user to select the exact scope. The default project is only a UI hint. 5. For the selected tenant, call `GET /api/platform/agent-catalog?tenant_id={tenant_id}` with its exact tenant ID. Check the requested products, available capabilities and the actor's role for the selected project. A listed transport is not runtime readiness. 6. For the selected project, call `GET /api/platform/project-status?tenant_id={tenant_id}&project_id={project_id}` with both exact IDs. Read its saved product roles, assigned connections and permission-filtered next reads. Its provider and deployment readiness values remain unverified. If connection setup needs inspection and the current actor is a tenant administrator or Datagran superadmin, call `GET /api/platform/agent-connection-status?tenant_id={tenant_id}&project_id={project_id}`. Other actors must ask an administrator. This read reports saved Home topology only; it does not check a provider or Calendar agent grant. 7. A new signup includes Home/Intelligence, not automatic CRM, Inbox or Voice access. If a requested product is disabled, have a tenant administrator use Home's reviewed setup flow. `product_setup_not_configured` requires Datagran support; a saved entitlement or product badge is not runtime readiness. Open [Products](/dashboard/products) after selecting the tenant and project in Home. A tenant administrator can [enable the product](/admin/products) and [assign a project role](/admin/product-access). These are browser pages with separate access checks, not general agent write APIs. For Inbox, a tenant administrator can [connect Instagram or Messenger](/connections#social-messaging) and must choose the exact project in the form. An Inbox product administrator without tenant administration can open Inbox but must ask the tenant administrator to connect the channel. A saved channel is not proof of delivery. For email outreach, a tenant administrator connects Gmail / Google Workspace or Outlook / Microsoft 365 in the Email section of [Connections](/connections). Confirm the sender, exact project and ready send/receive permissions. An Inbox project administrator follows Inbox → Automations → New automation → Create a personal email automation. This opens Audience, Message and Launch; the general editor's Email channel is a different workflow. Use the [input checklist](https://api.agents.datagran.io/v1/inbox/docs.md#gather-the-inputs) and [readiness checks](https://api.agents.datagran.io/v1/inbox/docs.md#check-readiness-and-resolve-blockers). Research has its own paid approval and may start before mailbox setup; sending requires a ready mailbox and separately reviewed recipients, copy and budget. Connecting a mailbox does not send a message. 8. Check connection assignment, product authorization, runtime readiness and any per-operation confirmation before acting. 9. Verify the outcome using the returned receipt or status; report unavailable and uncertain states explicitly. ## Optional delegated Home reads A registered AI client can start OAuth from [Home's protected-resource metadata](https://home.datagran.io/.well-known/oauth-protected-resource/api/mcp). Check that metadata and [the authorization-server document](https://home.datagran.io/.well-known/oauth-authorization-server) before connecting to https://home.datagran.io/api/mcp. The user must consent to exact tenant and project access. Home's delegated tools list workspaces, read the selected tenant catalog and read the selected project status. They cannot create ads, agents, leads, follow-ups or bookings. Consent, current access and the requested scope are checked on every tool call. Do not copy browser cookies into a client or treat a successful connection as product readiness. ## Safety rules - Public discovery is not authorization. Sign in, use GET /api/platform/agent-workspaces, select the exact tenant and project, then read the tenant and project status before using a tool. - Do not use a disabled product or infer a connection, grant, deployed feature or runtime readiness from this catalog. - Ask for explicit human approval before sending messages, buying a number, creating an ad draft, changing a live workflow, or booking a meeting. Respect the exact confirmation contract of each operation. - Never request or display provider secrets, private customer data, transcripts or logs through these public resources. - Use the current browser session for signed-in reads. Do not copy session cookies into prompts or treat them as durable machine credentials. - If an external write has an uncertain outcome, inspect or reconcile its recorded status before retrying; keep idempotency keys stable. ## Example user request “Set up ChatGPT Ads measurement, a voice agent, attribution, CRM leads and calendar booking.” An agent can guide the browser signup and connection setup, request the needed grants, configure available products, and verify each step. No public account-creation API is advertised here. ChatGPT Ads here is measurement/conversion feedback, not ad creation. A voice agent, CRM write and confirmed booking each have separate authorization and readiness checks. Stop at review/approval boundaries rather than claiming the whole workflow is one unattended action. ## Example journey: From ChatGPT Ads measurement to a confirmed meeting This is guidance only. Recheck live access and product contracts for the selected tenant/project before every action. 1. Guide signup or sign-in in the browser. The user controls identity, credentials and exact tenant/project selection. - Responsible actor: user. - Evidence to keep: A current authenticated session and an unambiguous selected tenant and project. - Stop if: Identity is incomplete, access is revoked, or the intended tenant/project is ambiguous. 2. Check the selected tenant's requested products in Home. A new signup includes Home/Intelligence, not automatic CRM, Inbox or Voice entitlement. If a product is disabled, use Home's administrator setup page and wait for provisioning and an exact-project grant. If CRM, Inbox or GPT Live needs attention, an administrator can request Retry setup there. Re-read product status after an uncertain response; do not disable a product to force another setup attempt or call an unreviewed write endpoint as an AI tool. - Responsible actor: tenant administrator. - Evidence to keep: Each requested product has a current tenant entitlement and actor/project grant, and provisioning is no longer pending; product runtime readiness is checked separately. - Stop if: Product setup is not configured, requires Datagran support, remains provisioning or lacks the required project grant. 3. Connect the authorized marketing source and configure ChatGPT Ads measurement or conversion feedback where supported; do not promise ChatGPT ad creation. - Responsible actor: tenant administrator. - Evidence to keep: The exact project has authorized account assignment, a fresh import or observed measurement evidence, and separately verified conversion-delivery status where requested. - Stop if: Provider consent, account assignment, fresh import or product entitlement is missing. 4. Review project tracking configuration and source provenance, then observe real touch or conversion records. - Responsible actor: authorized operator. - Evidence to keep: A project-scoped observed event or conversion record with its source and time, not just a saved tracking setting. - Stop if: Only configuration exists or evidence cannot be tied to the selected project. 5. Inspect the selected-project agent list. Before creating a new agent, run Voice creation preflight with current user authority. Create or edit only an authorized draft, obtain review before publishing, and verify the intended website or phone channel separately. - Responsible actor: voice administrator. - Evidence to keep: Published agent version, current project grant, connected channel and an observed test session in that channel. - Stop if: Creation preflight denies a new agent, only a draft or saved number exists, the channel is not enabled, or provider readiness is unknown. 6. Resolve the customer identity in the exact CRM workspace and capture a lead with a stable source-event identity where supported. - Responsible actor: authorized operator. - Evidence to keep: A scoped CRM person and lead receipt linked to the intended source; Home customer and Funnel IDs are reconciled separately. - Stop if: The CRM grant is missing, the person belongs to another workspace, or an uncertain person upsert or lead insert has not been inspected. 7. Prepare a reply or follow-up proposal, check recipient consent and sender/channel readiness, then request the required review before sending or activation. - Responsible actor: authorized operator. - Evidence to keep: A reviewed draft and, only after approval, the platform's send or automation receipt with its actual status. - Stop if: Consent, approval, sender readiness or an uncertain-send reconciliation is missing. 8. Approve the exact Calendar/project/agent grant, check current availability, repeat the date and timezone, and request explicit customer confirmation before booking. - Responsible actor: calendar owner and customer. - Evidence to keep: A provider-backed availability result followed by the original workflow's recorded status: booked receipt for the confirmed time. - Stop if: Only a saved grant or proposed slot exists, customer confirmation is absent, or the booking outcome is unknown; reconcile the original request rather than inserting another. 9. Review project-scoped receipts and operational evidence for each requested action, then report completed, pending and uncertain steps separately. - Responsible actor: authorized operator. - Evidence to keep: Every requested outcome has its own authorized receipt or observed status; missing evidence remains explicitly unknown. - Stop if: Any required write, provider action or cross-service identity link lacks verifiable evidence. ## Example journey: From connected sources to reviewed AI guidance This is guidance only. Recheck live access and product contracts for the selected tenant/project before every action. 1. Confirm the exact tenant and project, the sources the user wants to use, and any provider consent. The user controls sign-in, credentials and consent. - Responsible actor: user. - Evidence to keep: A current authenticated session, an unambiguous tenant and project, and a user-approved source list. - Stop if: The selected scope is ambiguous, access was revoked, or a requested source lacks consent. 2. Connect only supported sources and assign their allowed capabilities to the selected project. Check saved assignments and provider access separately. - Responsible actor: tenant administrator. - Evidence to keep: The exact project has saved source assignments and a separate current provider check where the product supports one. - Stop if: Only a tenant-level connection exists, its project assignment is missing, or provider access is unknown. 3. Check Intelligence feature grants, optional Memory access, Groovy product access, license, worker connection and tool grants independently. A Home launch does not make Groovy ready. - Responsible actor: authorized operator. - Evidence to keep: Current project grants and product-owned preflight evidence for the selected Groovy workspace and worker. - Stop if: A feature grant, license, worker connection or required tool approval is missing; a recent heartbeat alone is not task execution. 4. Review consented source provenance, Memory access and retention, and Guardrails policy drafts. Ask for review before activation where supported. - Responsible actor: tenant administrator. - Evidence to keep: A scoped source inventory, saved access and retention settings, and the recorded policy review or active status for each requested change. - Stop if: Source consent or provenance is missing, retention is unresolved, or only a saved policy draft exists. 5. Select a Mind, worker and approved skills for one controlled read or proposal task. Inspect the owned task and its safe diagnostics before any retry. - Responsible actor: licensed groovy user. - Evidence to keep: An owned task receipt and product-owned diagnostics showing a completed result, not only a queued or running state. - Stop if: The task awaits approval, remains queued or running, fails, or has an uncertain outcome that has not been inspected. 6. Review source-backed recommendations and observed outcomes. Approve, reject or withdraw each proposed learning change through the authorized product flow. - Responsible actor: authorized reviewer. - Evidence to keep: A recorded decision tied to source and outcome evidence, followed by an observed result or an explicit pending state. - Stop if: The recommendation lacks provenance, consent, reviewer authority or a way to reverse a harmful change. 7. Compare Home project activity with product-owned task and session diagnostics. Keep missing data unknown; do not assume IDs from different services form one trace. - Responsible actor: authorized operator. - Evidence to keep: Separate authorized receipts or observed statuses for each service, with unresolved gaps reported as unknown. - Stop if: A required result is missing, a cross-service identity link is unproven, or raw customer logs would be exposed. Choose only the journey the user requested. Groovy orchestration and learning changes are not part of a meeting setup request unless the user asks for them. --- # Ads and attribution > Analyze Meta, Google and ChatGPT Ads performance and connect campaigns to leads and outcomes. Human entry point: /attribution ## What an authorized agent can help with - Read project-scoped campaign and source reporting - Set up tracking links and inspect recorded attribution ## Limits and checks - ChatGPT Ads integration is measurement and conversion feedback, not ChatGPT ad creation - Attribution is evidence with provenance, not proof that every touch or conversion was observed ## Related surfaces - [creative](/docs/products/creative.md) - [connections](/docs/products/connections.md) - [crm](/docs/products/crm.md) - [intelligence](/docs/products/intelligence.md) ## Reviewed API specifications - [/openapi/marketing.json](/openapi/marketing.json) For live tenant access, use authenticated `GET /api/platform/agent-workspaces`, `GET /api/platform/agent-catalog?tenant_id={tenant_id}` and `GET /api/platform/project-status?tenant_id={tenant_id}&project_id={project_id}` in that order. Check product-specific readiness before acting. These public docs are not an execution grant. --- # Creative exploration > Generate and review image, video and carousel variations for existing marketing destinations. Human entry point: /creative-exploration ## What an authorized agent can help with - Prepare creative variations - Show a reviewed Meta draft destination for human confirmation ## Limits and checks - A reviewed Meta-source variation may create a paused ad in an existing ad set - This is not a general self-service campaign-from-scratch or ChatGPT Ads creation flow - Publication and paid spend require explicit human control ## Related surfaces - [ads-attribution](/docs/products/ads-attribution.md) - [connections](/docs/products/connections.md) ## Reviewed API specifications - [/openapi/creative.json](/openapi/creative.json) For live tenant access, use authenticated `GET /api/platform/agent-workspaces`, `GET /api/platform/agent-catalog?tenant_id={tenant_id}` and `GET /api/platform/project-status?tenant_id={tenant_id}&project_id={project_id}` in that order. Check product-specific readiness before acting. These public docs are not an execution grant. --- # Voice agents > Configure GPT Live agents for website chat, live voice and phone; enterprise voice has a managed setup path. Human entry point: /dashboard/products ## What an authorized agent can help with - Check the selected project's creation preflight and create an authorized GPT Live draft through the reviewed Agents API - Inspect project-scoped call activity where access is granted ## Limits and checks - Creation preflight is a point-in-time check; a created draft is not published or channel-ready - A saved agent is not automatically published, connected to a number or permitted to book a calendar - Enterprise Voice setup requires Datagran administration ## Related surfaces - [connections](/docs/products/connections.md) - [calendar](/docs/products/calendar.md) - [inbox-followups](/docs/products/inbox-followups.md) - [observability](/docs/products/observability.md) ## Product-owned discovery to verify Home does not check whether these external URLs are deployed. Fetch each anonymously and require HTTP 200 with the expected content type before relying on it; any non-200 response, including 403, 404 or a redirect, means use the authorized product UI and report machine discovery unavailable. - [voice_index](https://dashboard.agents.datagran.io/llms.txt) (text/plain) - [voice_agent_guide](https://dashboard.agents.datagran.io/agent.txt) (text/plain) - [voice_catalog](https://dashboard.agents.datagran.io/agent-resources.json) (application/json) - [voice_core_openapi](https://dashboard.agents.datagran.io/openapi.json) (application/json) - [voice_api_index](https://api.agents.datagran.io/v1/agent-builder/llms.txt) (text/plain) For live tenant access, use authenticated `GET /api/platform/agent-workspaces`, `GET /api/platform/agent-catalog?tenant_id={tenant_id}` and `GET /api/platform/project-status?tenant_id={tenant_id}&project_id={project_id}` in that order. Check product-specific readiness before acting. These public docs are not an execution grant. --- # CRM > Manage customer records, relationships and sales stages in a project-scoped CRM. Human entry point: /dashboard/products ## What an authorized agent can help with - Read authorized records and relationships - Create or update a person through an authorized upsert in the selected CRM workspace ## Limits and checks - Home customer identity and Funnel lead IDs are distinct from a CRM record ID - Datagran CRM contact editing is available from the Inbox name and CRM People records; stale edits conflict and saving never starts a call - Inbox edits Datagran CRM people and existing Salesforce Contacts/Leads with provider field permissions; Titan supports contact linking and refresh, while Hibe needs a human contact-editing API extension - Write access and CRM connection must be checked for the exact tenant and project - A person's external_id is an update target and an upsert can replace existing fields; inspect the record before replaying an uncertain write ## Related surfaces - [ads-attribution](/docs/products/ads-attribution.md) - [inbox-followups](/docs/products/inbox-followups.md) - [calendar](/docs/products/calendar.md) - [connections](/docs/products/connections.md) ## Product-owned discovery to verify Home does not check whether these external URLs are deployed. Fetch each anonymously and require HTTP 200 with the expected content type before relying on it; any non-200 response, including 403, 404 or a redirect, means use the authorized product UI and report machine discovery unavailable. - [crm_index](https://crm.datagran.io/llms.txt) (text/plain) - [crm_agent_guide](https://crm.datagran.io/agent.txt) (text/plain) - [crm_product_guide](https://crm.datagran.io/docs/crm.md) (text/markdown) - [crm_api_guide](https://crm.datagran.io/docs/api.md) (text/markdown) - [crm_cli_guide](https://crm.datagran.io/docs/cli.md) (text/markdown) - [crm_openapi](https://crm.datagran.io/api/v1/openapi.json) (application/json) - [crm_catalog](https://crm.datagran.io/.well-known/datagran-crm.json) (application/json) For live tenant access, use authenticated `GET /api/platform/agent-workspaces`, `GET /api/platform/agent-catalog?tenant_id={tenant_id}` and `GET /api/platform/project-status?tenant_id={tenant_id}&project_id={project_id}` in that order. Check product-specific readiness before acting. These public docs are not an execution grant. --- # Inbox and follow-up automation > Manage conversations and personal email outreach with researched prospects, reviewed drips, Billing and reply handoffs. Human entry point: /dashboard/products ## What an authorized agent can help with - Read authorized conversations and follow-up work - Draft a reply or automation for review - Open Inbox → Automations → New automation → Create a personal email automation for Audience, Message and Launch; the general editor's Email channel is a different workflow - Gather the [outreach input checklist](https://api.agents.datagran.io/v1/inbox/docs.md#gather-the-inputs): workspace, audience, roles, offer, voice, approved claims, optional sample, sender, timing, budgets, batch size, tracking and reply handling - Help review sourced companies, decision-makers, candidate work addresses and ZeroBounce verification before approving recipients - Help shape Sonnet's personal angle and distinct messages from approved claims, tone and writing samples; unsupported facts need more research - Request and review additional batches of 10, 20, 50 or 100 people through the console while existing work continues - Inspect valid contacted people, actual agent work, drip progress, individual email activity, reply intent and campaign costs ## Limits and checks - Inbox owns message scheduling, sending and flow control - Email outreach is enabled across tenants; each project still needs Inbox access, administrator approval, a verified mailbox with send/receive permissions and Billing capacity - Recipient consent, channel readiness and tenant policy must be checked before sending - The Inbox tool gateway is trusted-server only; public documentation is not direct model access - An automation draft is not an active follow-up policy - Email outreach launch is a separately reviewed console workflow, not an extra gateway capability or delegated Home read tool - Follow the [readiness checks](https://api.agents.datagran.io/v1/inbox/docs.md#check-readiness-and-resolve-blockers): Home Product access and Product roles, Connections → Email, Usage & billing, current estimates and recipient review - Research can start before a mailbox is connected, with separate paid-work approval. Sending requires a ready mailbox. Create automation saves setup; Start research for N people begins paid work; Approve N people and queue emails authorizes sending - Approve each batch's recipients, copy, 5–20 distinct email steps, timing and budget; new batches do not restart completed work - The first step can send separately to approved valid alternate addresses; later steps use the primary address, with one person count and tracking per email - Open and click detection can include automated activity; neither proves human reading or buying intent, and acceptance does not prove delivery - Inbox contact cards can link a CRM person and add phone, email, role, notes and extra fields; no accessible CRM shows setup choices with Datagran CRM first - Calling requires the current CRM phone, a matched Home customer and project lead, a ready calling connection, operator readiness, Billing and contact permission - Every reply pauses the drip; high intent or uncertainty goes to Inbox, rejection stops outreach and opt-out suppresses the person and all addresses - Routine AI answers need an approved paid allowance and do not resume the drip; continuation needs a fresh review of replies and remaining steps - Research, verification, drafts, revisions and reply reviews use current Billing quotes and actual usage; shared verifier credit waits are uncharged and never buy credits automatically ## Related surfaces - [crm](/docs/products/crm.md) - [connections](/docs/products/connections.md) - [groovy](/docs/products/groovy.md) - [voice-agents](/docs/products/voice-agents.md) ## Product-owned discovery to verify Home does not check whether these external URLs are deployed. Fetch each anonymously and require HTTP 200 with the expected content type before relying on it; any non-200 response, including 403, 404 or a redirect, means use the authorized product UI and report machine discovery unavailable. - [inbox_index](https://api.agents.datagran.io/v1/inbox/llms.txt) (text/plain) - [inbox_agent_guide](https://api.agents.datagran.io/v1/inbox/agent.txt) (text/plain) - [inbox_setup_guide](https://api.agents.datagran.io/v1/inbox/docs.md) (text/markdown) - [inbox_openapi](https://api.agents.datagran.io/v1/inbox/openapi.json) (application/json) - [inbox_catalog](https://api.agents.datagran.io/v1/inbox/agent-resources.json) (application/json) For live tenant access, use authenticated `GET /api/platform/agent-workspaces`, `GET /api/platform/agent-catalog?tenant_id={tenant_id}` and `GET /api/platform/project-status?tenant_id={tenant_id}&project_id={project_id}` in that order. Check product-specific readiness before acting. These public docs are not an execution grant. --- # Calendar > Connect a calendar, inspect availability and use the separately confirmed booking workflow. Human entry point: /connections ## What an authorized agent can help with - Guide connection and project/agent grant setup - Check availability with a granted product agent ## Limits and checks - Connecting a calendar does not authorize booking - The booking gateway is server-to-server, not a public browser or agent endpoint - A saved grant or published binding does not prove a deployed channel or live provider is ready - Treat uncertain booking outcomes as requiring reconciliation, never an automatic repeat insertion ## Related surfaces - [connections](/docs/products/connections.md) - [voice-agents](/docs/products/voice-agents.md) - [crm](/docs/products/crm.md) ## Product-owned discovery to verify Home does not check whether these external URLs are deployed. Fetch each anonymously and require HTTP 200 with the expected content type before relying on it; any non-200 response, including 403, 404 or a redirect, means use the authorized product UI and report machine discovery unavailable. - [calendar_voice_index](https://api.agents.datagran.io/v1/agent-builder/calendar/llms.txt) (text/plain) - [calendar_voice_setup_guide](https://api.agents.datagran.io/v1/agent-builder/calendar/docs.md) (text/markdown) - [calendar_voice_setup_openapi](https://api.agents.datagran.io/v1/agent-builder/calendar/openapi.json) (application/json) For live tenant access, use authenticated `GET /api/platform/agent-workspaces`, `GET /api/platform/agent-catalog?tenant_id={tenant_id}` and `GET /api/platform/project-status?tenant_id={tenant_id}&project_id={project_id}` in that order. Check product-specific readiness before acting. These public docs are not an execution grant. --- # Connections > Connect and assign external sources and channels to the correct tenant and project. Human entry point: /connections ## What an authorized agent can help with - Guide authorized setup for marketing, CRM, messaging, voice and calendar sources - Guide a tenant administrator through the Email section for Gmail / Google Workspace or Outlook / Microsoft 365 consent, sender verification and project assignment - Inspect non-secret connection status ## Limits and checks - A connected provider account is not automatically assigned to a product or agent - Existing file or calendar permissions do not authorize email; mailbox setup requires explicit mail consent and current send/receive grants, and sends no test message - Never expose credentials or infer ownership from email or a shared partner account - Some provider adapters and production channels remain gated ## Related surfaces - [ads-attribution](/docs/products/ads-attribution.md) - [voice-agents](/docs/products/voice-agents.md) - [inbox-followups](/docs/products/inbox-followups.md) - [calendar](/docs/products/calendar.md) - [crm](/docs/products/crm.md) ## Reviewed API specifications - [/openapi/connections.json](/openapi/connections.json) For live tenant access, use authenticated `GET /api/platform/agent-workspaces`, `GET /api/platform/agent-catalog?tenant_id={tenant_id}` and `GET /api/platform/project-status?tenant_id={tenant_id}&project_id={project_id}` in that order. Check product-specific readiness before acting. These public docs are not an execution grant. --- # Groovy harness > Build and operate advanced AI automations with Minds, tools, runs and approval boundaries. Human entry point: /dashboard/products ## What an authorized agent can help with - Launch a project-scoped Groovy workspace when enabled - Use enabled read and proposal capabilities ## Limits and checks - Groovy's multi-agent harness exists in its own product; a Home launch grant does not prove its license, connector, tool authority or runtime readiness - Groovy's external harness API handles restricted conversations, not worker administration or Datagran project grants - A Groovy decision does not take over Inbox scheduling or make unapproved external changes ## Related surfaces - [inbox-followups](/docs/products/inbox-followups.md) - [intelligence](/docs/products/intelligence.md) - [observability](/docs/products/observability.md) ## Product-owned discovery to verify Home does not check whether these external URLs are deployed. Fetch each anonymously and require HTTP 200 with the expected content type before relying on it; any non-200 response, including 403, 404 or a redirect, means use the authorized product UI and report machine discovery unavailable. - [groovy_index](https://www.gogroovy.ai/llms.txt) (text/plain) - [groovy_agent_guide](https://www.gogroovy.ai/agent.txt) (text/plain) - [groovy_setup_guide](https://www.gogroovy.ai/ai/groovy-agent-guide.md) (text/markdown) - [groovy_harness_guide](https://www.gogroovy.ai/ai/groovy-harness.md) (text/markdown) - [groovy_datagran_guide](https://www.gogroovy.ai/ai/groovy-datagran.md) (text/markdown) - [groovy_external_harness_openapi](https://www.gogroovy.ai/openapi.json) (application/json) - [groovy_catalog](https://www.gogroovy.ai/.well-known/groovy-agent-resources.json) (application/json) For live tenant access, use authenticated `GET /api/platform/agent-workspaces`, `GET /api/platform/agent-catalog?tenant_id={tenant_id}` and `GET /api/platform/project-status?tenant_id={tenant_id}&project_id={project_id}` in that order. Check product-specific readiness before acting. These public docs are not an execution grant. --- # Intelligence and recursive learning > Review project evidence, lead and source insights, knowledge and outcome-driven guidance. Human entry point: /intelligence ## What an authorized agent can help with - Read permitted project insights and activity - Prepare guidance and review knowledge where the tenant has access ## Limits and checks - Merged implementation does not prove a feature is deployed or enabled for this tenant - Learning and guidance must preserve source provenance and human review boundaries ## Related surfaces - [ads-attribution](/docs/products/ads-attribution.md) - [crm](/docs/products/crm.md) - [memory-guardrails](/docs/products/memory-guardrails.md) - [observability](/docs/products/observability.md) ## Reviewed API specifications - [/openapi/intelligence.json](/openapi/intelligence.json) For live tenant access, use authenticated `GET /api/platform/agent-workspaces`, `GET /api/platform/agent-catalog?tenant_id={tenant_id}` and `GET /api/platform/project-status?tenant_id={tenant_id}&project_id={project_id}` in that order. Check product-specific readiness before acting. These public docs are not an execution grant. --- # Memory and guardrails > Configure reusable knowledge and policies for authorized product agents. Human entry point: /memory ## What an authorized agent can help with - Inspect available setup and policy drafts - Guide an administrator through review before activation ## Limits and checks - A saved draft is not an active runtime policy - Memory setup requires the corresponding product and project grants ## Related surfaces - [intelligence](/docs/products/intelligence.md) - [voice-agents](/docs/products/voice-agents.md) - [inbox-followups](/docs/products/inbox-followups.md) ## Reviewed API specifications - [/openapi/memory.json](/openapi/memory.json) For live tenant access, use authenticated `GET /api/platform/agent-workspaces`, `GET /api/platform/agent-catalog?tenant_id={tenant_id}` and `GET /api/platform/project-status?tenant_id={tenant_id}&project_id={project_id}` in that order. Check product-specific readiness before acting. These public docs are not an execution grant. --- # Tracing, observability and logs > Inspect activity, traces, usage and operational evidence where authorized. Human entry point: /activity ## What an authorized agent can help with - Read project-scoped activity and available cost or call summaries - Use traces and logs to explain outcomes and failures ## Limits and checks - Public discovery never exposes tenant logs, transcripts, credentials or traces - Missing or partial cost and observation data must be labeled unknown, not zero ## Related surfaces - [intelligence](/docs/products/intelligence.md) - [groovy](/docs/products/groovy.md) - [voice-agents](/docs/products/voice-agents.md) - [inbox-followups](/docs/products/inbox-followups.md) ## Reviewed API specifications - [/openapi/observability.json](/openapi/observability.json) For live tenant access, use authenticated `GET /api/platform/agent-workspaces`, `GET /api/platform/agent-catalog?tenant_id={tenant_id}` and `GET /api/platform/project-status?tenant_id={tenant_id}&project_id={project_id}` in that order. Check product-specific readiness before acting. These public docs are not an execution grant.