canonical: https://jentic.com/apis/grant.nu/grant

# Grant Nu GrantOne Accounting API

The GrantOne Accounting API fetches batches of accounting postings and journal entries for export to another system and marks each batch as exported once it is pulled. It authenticates with a session token and works in batches of up to 50 postings at a time. A reset operation, available only while testing, returns a batch to its unexported state so an integration can be re-run.

## For AI agents

Lets an AI agent pull accounting postings and journal entries from GrantOne in batches and mark them as exported after transfer.

## Scope

Does not handle invoicing, payments, or payroll. Use for exporting accounting postings and journal entries only.

## Capabilities

- Authenticate and obtain a session token for integration access
- Fetch up to 50 postings or journal entries in a batch for export
- Mark a batch of exported postings as exported
- Reset a previously exported batch while testing

## Use cases

### Agent-run accounting export

An AI agent can move accounting data out of GrantOne by authenticating, fetching a batch of postings, transferring them to a target ledger, and marking the batch as exported so the same entries are not pulled twice. The batch-of-50 limit keeps each transfer bounded. Connected through Jentic, the agent only calls the fetch and mark-exported operations.

Example prompt: Authenticate, fetch a batch of up to 50 postings, and mark the batch as exported after transferring them

### Incremental ledger sync

Finance teams syncing GrantOne to a data warehouse or another ledger need an idempotent pull. GrantOne hands out postings in batches and tracks which batches are marked exported, so a scheduled job can pull only what is new each run. The export marker prevents double-counting entries downstream.

Example prompt: Fetch the next unexported batch of postings and mark it exported once the downstream load succeeds

### Integration testing with reset

While building an integration, developers need to re-run the same export without manually unflagging records. GrantOne's reset operation, available only during testing, returns a previously exported batch to its unexported state so the pull can be repeated. This keeps a test harness repeatable before go-live.

Example prompt: Reset a batch of postings previously marked exported so an integration test can re-run the export

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/api/integration/authenticate` | Obtain a session token |
| GET | `/api/integration/postings/batch` | Fetch up to 50 postings for exporting |
| PATCH | `/api/integration/postings/batch/{id}/export` | Mark a batch as exported |
| PATCH | `/api/integration/postings/batch/{id}/reset` | Reset a previously exported batch (testing only) |

## Key resources

- **Authentication** — Obtain a session token for integration access
- **Postings batch** — Fetch postings and journal entries in batches of up to 50
- **Export state** — Mark a batch as exported, or reset it while testing

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 44 / 100
- **Maturity:** Foundational
- **Dimensions:**
  - Foundational Compliance: 74 / 100
  - Developer Experience & Jentic Compatibility: 38 / 100
  - AI-Readiness & Agent Experience: 23 / 100
  - Agent Usability: 94 / 100
  - Security: 75 / 100
  - AI Discoverability: 63 / 100
- **View full report:** https://jentic.com/apis/grant.nu/grant/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring GrantOne by hand means obtaining a Bearer JWT session token, batching postings in groups of 50, and tracking which batches are marked exported yourself. Through Jentic you install once, import GrantOne from the API Directory, store the token once, and your agent calls it.
- **Permission scoping:** GrantOne puts the batch id in the URL path (`/api/integration/postings/batch/{id}/export`), so a rule can bound your agent to the fetch and export operations and leave the reset operation out. You choose the operations it may call, so the testing-only reset is not included unless you add it.
- **Credential handling:** Your GrantOne session token is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'fetch accounting postings' or 'mark a batch exported', and Jentic returns the matching GrantOne operation with its input schema so the agent calls the right endpoint without reading the reference docs.

## Related APIs

- **bexio API** — Full SMB accounting platform versus GrantOne's focused posting-export integration.
- **FreeAgent API** — Cloud accounting with invoicing and banking versus GrantOne's export-only surface.
- **Bkper** — A programmable ledger to receive the postings exported from GrantOne.

## FAQ

### What authentication does the GrantOne Accounting API use?

GrantOne authenticates with a Bearer JWT session token, obtained from its authenticate operation and sent in the Authorization header, per its OpenAPI spec. Through Jentic the token is stored encrypted by your own Jentic One instance and injected at execution time, so it never enters the agent's context.

### Can I export journal entries with the GrantOne Accounting API?

Yes. The postings-batch operation returns up to 50 postings or journal entries at a time for export, and the export operation marks a batch as exported so the same entries are not pulled again. During testing, a reset operation returns a batch to its unexported state.

### What are the rate limits for the GrantOne Accounting API?

The OpenAPI spec does not specify rate limits, and postings are handed out in batches of up to 50 rather than by a per-second quota. Check https://grant.nu for current integration limits.

### How do I pull and export postings with the GrantOne Accounting API through Jentic?

Search Jentic for 'fetch accounting postings' and it returns the GrantOne postings-batch operation with its input schema, then search 'mark postings exported' for the export operation. Install Jentic One with `curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh`, import GrantOne from the API Directory, and store your token once. To run it on your own infrastructure, install Jentic One from its GitHub repo.

### Can I limit what my agent is allowed to do with GrantOne?

Yes. Write a rule that allows only the authenticate, fetch-postings, and mark-exported operations, so the agent can run the export but cannot reset exported batches, and every call it makes is logged.

### Is there a GrantOne MCP server?

You don't need an MCP server to connect your agent to GrantOne. Jentic connects it directly from the API Directory: import it, store your credential once, and your agent discovers and calls the operations it needs on demand.
