---
title: BlackLine API Integration on Truto
slug: blackline
category: Accounting
canonical: "https://truto.one/integrations/detail/blackline/"
---

# BlackLine API Integration on Truto



**Category:** Accounting  
**Status:** Beta

## Unified APIs

### Unified User Directory API

- **Groups** — Groups are a collection of users in the source application. In some applications, they might also be called Teams.
- **Me** — 
- **Role Assignments** — 
- **Roles** — The Role object represents a role of a User.
- **Users** — The User object represents a User.

## MCP-ready AI tools

Truto exposes 22 tools for BlackLine that AI agents can call directly.

- **list_all_black_line_users** — List all BlackLine users. Returns an array of user records, each including its id; use filter, sort, and sortOrder to narrow results and fields to trim the response.
- **get_single_black_line_user_by_id** — Get a single BlackLine user by id. Returns the user object including its id. Use fields to select which fields to return. Required: id.
- **create_a_black_line_user** — Create a new user in BlackLine. Returns the created user object including its id. Required: user request body (JSON).
- **update_a_black_line_user_by_id** — Update an existing BlackLine user by id. Returns the updated user object including its id. Required: id and a user request body (JSON).
- **delete_a_black_line_user_by_id** — Trigger the asynchronous deprovision process for a BlackLine user by id. Returns the deprovision process response; use the deprovision status endpoint to poll progress. Required: id.
- **black_line_users_assign_role** — Assign one or more role-product assignments to a BlackLine user. Returns an empty 204 response on success. Required: user_id (path) and a JSON array body of role-product assignment objects; role ids are listed by the Roles API and product ids are provided by BlackLine Support.
- **black_line_users_remove_role** — Unassign a single role and product from a BlackLine user. Returns an empty 204 response on success. Required: user_id.
- **list_all_black_line_me** — Get information about the currently logged-in user in BlackLine. Returns the logged-in user record including its id and profile attributes.
- **list_all_black_line_teams** — List BlackLine teams. Returns team records including their id and upstream-defined attributes.
- **get_single_black_line_team_by_id** — Get a BlackLine team by id. Returns the team record including its id and upstream-defined attributes. Required: id.
- **create_a_black_line_team** — Create a BlackLine team. Returns the created team record including its id and upstream-defined attributes. Requires a JSON team request body.
- **update_a_black_line_team_by_id** — Update a BlackLine team by id. Returns the updated team record including its id and upstream-defined attributes. Requires: id and a JSON team request body.
- **delete_a_black_line_team_by_id** — Delete a BlackLine team by id. Returns an empty 204 response on success. Required: id.
- **list_all_black_line_roles** — List all roles available in the BlackLine instance. Returns an array of role records, each including its id. This endpoint takes no query parameters.
- **list_all_black_line_user_teams** — List the BlackLine teams a user is assigned to, one team record per assignment. Returns: id. Required: user_id.
- **black_line_user_teams_add_user** — Assign one or more BlackLine teams to a user by sending a list of team ids. Returns an empty 204 response on success. Required: user_id and a list of team ids.
- **black_line_user_teams_remove_user** — Unassign a single team from a BlackLine user. Returns an empty 204 response on success. Required: user_id and team_id.
- **create_a_black_line_token** — Generate a BlackLine OAuth access token from client credentials. Returns the OAuth token payload used to authenticate subsequent BlackLine API requests; its fields are defined by BlackLine's 200tokenResponse type. Required: grant_type, scope, client_id, client_secret. username and password are additionally required for the Resource Owner flow, the only supported grant_type.
- **list_all_black_line_reports** — List the Blackline reports that have been run for the authenticated user. Returns report run entries with their id, the value to pass as reportRunId when downloading or exporting a report.
- **get_single_black_line_report_by_id** — Get the data of a completed Blackline report run by id and export type. Returns the report data itself; its columns and layout are specific to the report that was run, so they cannot be enumerated in advance. Required: id, export_type.
- **list_all_black_line_product_roles** — List all available role and product combinations in BlackLine. Returns role-product items including roleId and productId.
- **list_all_black_line_user_role_products** — List all the roles and products assigned to a user in BlackLine. Returns a collection of role-product assignment records, each with its roleId and productId. Required: user_id.

## How it works

1. **Link your customer's BlackLine account.** Use Truto's frontend SDK; we handle every OAuth and API key flow so you don't need to create the OAuth app.
2. **Authentication is automatic.** Truto refreshes tokens, stores credentials securely, and injects them into every API request.
3. **Call Truto's API to reach BlackLine.** The Proxy API is a 1-to-1 mapping of the BlackLine API.
4. **Get a unified response format.** Every response uses a single shape, with cursor-based pagination and data in the `result` field.

## Use cases

- **Automate SOX-compliant user deprovisioning across financial systems** — Identity and GRC platforms can sync user lifecycle events to BlackLine in real time, ensuring terminated employees lose access to sensitive financial close data immediately — a critical SOX audit requirement.
- **Centralize role-based access control for accounting platforms** — IT management and security SaaS products can read and manage BlackLine role assignments alongside other enterprise apps, giving admins a single pane of glass for RBAC across their customers' financial tool stack.
- **Sync employee directories into BlackLine for seamless onboarding** — HRIS and workforce management platforms can automatically provision new finance team members into BlackLine with the correct roles and group memberships, eliminating manual admin setup during onboarding.
- **Enforce segregation of duties policies across financial systems** — GRC and audit readiness platforms can continuously monitor BlackLine user roles and group assignments to detect segregation-of-duties conflicts and flag violations before auditors do.

## What you can build

- **Automated BlackLine user provisioning and deprovisioning** — Automatically create, update, and deprovision BlackLine user accounts when employee status changes in your customers' HRIS or identity provider.
- **Cross-platform role assignment dashboard** — Display a unified view of BlackLine roles and role assignments alongside other connected apps so admins can audit access from one screen.
- **Group membership sync from identity providers** — Keep BlackLine group memberships in sync with teams and departments defined in upstream directory sources like Okta, Azure AD, or Google Workspace.
- **Segregation of duties conflict detection** — Continuously scan BlackLine role assignments and flag users who hold conflicting roles that violate your customers' SoD policies.
- **Real-time access review reports for auditors** — Generate on-demand or scheduled reports showing which users have access to BlackLine, their roles, and group memberships to satisfy SOX and internal audit requests.

## FAQs

### What authentication method does BlackLine's API use?

BlackLine's Open API platform uses OAuth 2.0 with Bearer tokens. Truto handles the full auth flow so your team doesn't need to manage token exchange or refresh logic.

### Which BlackLine resources are available through Truto's Unified User Directory API?

Truto's Unified User Directory API maps to BlackLine's Users, Groups, Roles, Role Assignments, and Me endpoints, covering the core identity and access management surface area.

### Are BlackLine-specific tools like period management or data ingestion available today?

Not yet. BlackLine-specific tools (e.g., period management, transaction ingestion, task management) are built on request. Contact Truto to scope the exact endpoints you need and we'll build them for you.

### Can I deprovision users in BlackLine through Truto?

BlackLine exposes an asynchronous deprovision endpoint for users. Truto can support this operation — reach out to confirm availability or request it as a custom tool.

### How does Truto handle pagination and rate limits for BlackLine?

Truto abstracts away BlackLine's pagination and rate-limiting behavior behind a consistent interface. You make standard API calls and Truto manages retries, cursor tracking, and throttling under the hood.

### Who typically connects their BlackLine account in an end-user flow?

Usually a Financial Systems Admin or IT Operations lead who has admin-level access to BlackLine. They authorize the OAuth connection, and Truto securely stores and manages the credentials on behalf of your application.

## Related reading

- [Connect BlackLine to Claude: Sync Roles, Teams, and User Assignments](https://truto.one/blog/connect-blackline-to-claude-sync-roles-teams-and-user-assignments/) — Connect BlackLine to Claude using a managed MCP server. Learn to automate user assignments, team syncing, and financial reporting with AI.
- [Connect BlackLine to ChatGPT: Manage Users, Teams, and Reports](https://truto.one/blog/connect-blackline-to-chatgpt-manage-users-teams-and-report-data/) — Learn how to connect BlackLine to ChatGPT using a managed MCP server to automate user provisioning, extract financial reports, and orchestrate teams.
- [Connect BlackLine to AI Agents: Automate Reports and User Lifecycles](https://truto.one/blog/connect-blackline-to-ai-agents-automate-reports-and-user-lifecycles/) — Learn how to connect BlackLine to AI agents using Truto's /tools endpoint. Build autonomous workflows for financial reports and user lifecycle management.
