Make Contract Collaboration Effortless Across Teams with BoldSign API

Create and Manage Teams via the BoldSign Teams API

Table of Contents

Sign Docs 3x Faster

Send, sign, and manage documents securely and efficiently.

Summarize the blog post with:

TL;DR: Stop chasing approvals and manually fixing access. With the BoldSign Teams API, set up department-based teams so the right people automatically see the right templates and contracts, reducing permission chaos, speeding turnaround, and keeping workflows secure and audit-ready as you scale.

Use BoldSign to programmatically create, rename, retrieve, and list/search teams in your organization to ensure the right users can access the right templates and documents without manual permission juggling. This supports team-based contract management by letting you organize departments (HR, Sales, Legal, Finance) and control access at the team level, keeping eSignature workflows secure, consistent, and audit-ready. 

This guide is for developers and admins who want a scalable way to manage departmental structure and maintain secure, auditable workflows as the organization grows.

What are BoldSign teams, and why would you use them?

In BoldSign, a team is a group of users inside your organization that helps you:

  • Protect documents from unintended access across groups.
  • Share templates within the right team(s) for consistent sending.
  • Reduce admin overhead by managing access at the team level instead of user-by-user.

When does team management matter most?

Teams are especially helpful when you need clear ownership and controlled sharing across departments, for example:

  • Multiple departments handle different document types (HR offers, Legal contracts, Sales agreements).
  • Templates must be shared only within a specific group without exposing sensitive data.
  • Admins need a reliable way to review team structure for audits or compliance.

What you’ll need before calling the BoldSign API

Make sure you have the following in place:

  • A  BoldSign account (sandbox or production). 
  • An API key(orOAuth2 access token) to call BoldSign APIs over HTTPS. 
  • A REST client such as cURL, Postman, or your preferred HTTP library. 
  • TeamName to create a team, and TeamId to update or look up a team. 

Authentication headers should be in one of the following formats:

  • API Key: X-API-KEY: <your key> 
  • OAuth2: Authorization: Bearer <access_token> 

Note: The examples below use API Key authentication for clarity.

Which endpoints do you use to create, update, and list teams?

Base URL used in examples: https://api.boldsign.com 

Task Method + Path Key inputs Output you can expect 
Create a team POST /v1/teams/create TeamName (required) Team Id for the created team 
Rename a team PUT /v1/teams/update TeamId (required), TeamName (required) Success/acknowledgement 
Get team details GET /v1/teams/get TeamId (query, required) Team name, users, created/modified dates 
List/search teams GET /v1/teams/list page/pageSize; searchKey (optional)Paged list of teams + metadata 

Step-by-step: How to create a team with BoldSign API

Outcome: You’ll create a new team (for example, “HR”) and receive a team ID you can store for future operations.

What parameters are required to create a team?

Required body field: TeamName (string). This is the name of the team you want to create. 

Refer to the official Create Team API documentation for full details and best practice usage guidelines 

Create team request examples


curl -X 'POST' \ 
  'https://api.boldsign.com/v1/teams/create' \ 
  -H 'accept: application/json' \ 
  -H 'X-API-KEY: {your API key}' \ 
  -H 'Content-Type: application/json;odata.metadata=minimal;odata.streaming=true' \ 
  -d '{ 
  "TeamName": "HR" 
}' 
    

var apiClient = new ApiClient("https://api.boldsign.com", "Your_API_Key"); 
var teamClient = new TeamClient(apiClient); 
var team = new CreateTeam() 
{
         TeamName = "HR" 
}; 
var teamCreated = teamClient.CreateTeam(team);
    

import boldsign
configuration = boldsign.Configuration(api_key="YOUR_API_KEY") 
with boldsign.ApiClient(configuration) as api_client: 
    teams_api = boldsign.TeamsApi(api_client) 
    create_team_request = boldsign.CreateTeamRequest(teamName="HR") 
    team_created = teams_api.create_team(create_team_request=create_team_request)
    

<?php require_once "vendor/autoload.php"; 

use BoldSign\Configuration;
use BoldSign\Api\TeamsApi
use BoldSign\Model\CreateTeamRequest;

$config = new Configuration(); 
$config->setApiKey('YOUR_API_KEY');

$teams_api = new TeamsApi($config);

$create_team_request = new CreateTeamRequest(); 
$create_team_request->setTeamName('HR'); 

$team_created = $teams_api->createTeam($create_team_request); 
    

ApiClient client = Configuration.getDefaultApiClient();
client.setApiKey("YOUR_API_KEY");

TeamsApi teamsApi = new TeamsApi(client); 

CreateTeamRequest createTeamRequest = new CreateTeamRequest(); 
createTeamRequest.setTeamName("HR"); 

TeamCreated teamCreated = teamsApi.createTeam(createTeamRequest); 
    

import { CreateTeamRequest, TeamsApi } from "boldsign"; 

const teamsApi = new TeamsApi(); 
teamsApi.setApiKey("YOUR_API_KEY"); 

const createTeamRequest = new CreateTeamRequest();
createTeamRequest.teamName = "HR"; 

const teamCreated = teamsApi.createTeam(createTeamRequest); 
    

Step-by-step: How to rename a team  

Outcome: You’ll update an existing team’s name (for example, rename “Sales” to “Business Development”) without changing its team ID.

What parameters are required to update a team?

  • TeamId: the unique identifier of the team to rename. 
  • TeamName: the new name you want to set. 

Consult the official Update Team API documentation for full instructions and implementation details. 

Update team request examples


curl -X 'PUT' \ ' https://api.boldsign.com/v1/teams/update' \  
     -H 'accept: */*' \  
     -H 'X-API-KEY: ' \  
     -H 'Content-Type: application/json;odata.metadata=minimal;odata.streaming=true' \ 
     -d '{
          "TeamId": "8b637de3-27db-4603-a7d7-6a4fdd0124b8",
          "TeamName": "Sales"
}
    

var apiClient = new ApiClient("https://api.boldsign.com", "Your_API_Key"); 
var teamClient = new TeamClient(apiClient); 
var team = new UpdateTeam() 
{
         TeamName = "Sales", 
         TeamId = "YOUR_TEAM_ID"
}; 
teamClient.UpdateTeam(team);
    

import boldsign 

configuration = boldsign.Configuration(api_key="YOUR_API_KEY") 

with boldsign.ApiClient(configuration) as api_client: 

    teams_api = boldsign.TeamsApi(api_client) 

    team_update_request = boldsign.TeamUpdateRequest( 
        teamId="YOUR_TEAM_ID", 
        teamName="Sales")   

    teams_api.update_team(team_update_request=team_update_request) 
    

<?php require_once "vendor/autoload.php"; 

use BoldSign\Configuration; 
use BoldSign\Api\TeamsApi; 
use BoldSign\Model\TeamUpdateRequest; 

$config = new Configuration(); 
$config->setApiKey('YOUR_API_KEY'); 

$teams_api = new TeamsApi($config); 

$team_update_request = new TeamUpdateRequest(); 
$team_update_request->setTeamName('Sales'); 
$team_update_request->setTeamId('YOUR_TEAM_ID'); 
$teams_api->updateTeam($team_update_request); 
    

ApiClient client = Configuration.getDefaultApiClient();   
client.setApiKey("YOUR_API_KEY"); 

TeamsApi teamsApi = new TeamsApi(client); 

TeamUpdateRequest teamUpdateRequest = new TeamUpdateRequest(); 
teamUpdateRequest.setTeamId("YOUR_TEAM_ID");  
teamUpdateRequest.setTeamName("Sales"); 

teamsApi.updateTeam(teamUpdateRequest); 
    

import { TeamsApi, TeamUpdateRequest } from "boldsign"; 

const teamsApi = new TeamsApi(); 
teamsApi.setApiKey("YOUR_API_KEY"); 

const teamUpdateRequest = new TeamUpdateRequest(); 
teamUpdateRequest.teamId = "YOUR_TEAM_ID"; 
teamUpdateRequest.teamName = "Sales"; 

teamsApi.updateTeam(teamUpdateRequest); 
    

How to retrieve team details and members

Use this endpoint when you need to confirm the current team name, see who’s in the team, or capture team metadata for reporting and audits.

Refer to the official Get Team API documentation for complete usage guidelines. 

Get team details request examples


curl -X 'GET' \ 
  'https://api.boldsign.com/v1/teams/get?teamId=a5016cef-7bcd-4a60-b8bf-98fed2183b5c' \ 
  -H 'accept: application/json' \ 
  -H 'X-API-KEY: {your API key}'
    

var apiClient = new ApiClient("https://api.boldsign.com", "Your_API_Key"); 
var teamClient = new TeamClient(apiClient); 
var teamDetails = teamClient.GetTeamDetails("YOUR_TEAM_ID");
    

import boldsign 

configuration = boldsign.Configuration(api_key="YOUR_API_KEY") 

with boldsign.ApiClient(configuration) as api_client: 

    teams_api = boldsign.TeamsApi(api_client) 
    team_details = teams_api.get_team(team_id="YOUR_TEAM_ID") 
    

<?php require_once "vendor/autoload.php"; 

use BoldSign\Configuration; 
use BoldSign\Api\TeamsApi; 

$config = new Configuration(); 
$config->setApiKey('YOUR_API_KEY'); 

$teams_api = new TeamsApi($config); 
$team_details = $teams_api->getTeam($team_id = 'YOUR_TEAM_ID'); 
    

ApiClient client = Configuration.getDefaultApiClient();
client.setApiKey("YOUR_API_KEY"); 
          
TeamsApi teamsApi = new TeamsApi(client); 
TeamResponse teamDetails = teamsApi.getTeam("YOUR_TEAM_ID"); 
    

import { TeamsApi } from "boldsign"; 

const teamsApi = new TeamsApi(); 
teamsApi.setApiKey("YOUR_API_KEY"); 

const teamDetails = teamsApi.getTeam("YOUR_TEAM_ID");
    

How to list or search teams

Use this endpoint to fetch all teams, paginate results, and optionally filter by name (searchKey).

See the official documentation for listing teams for comprehensive usage instructions and parameter details.

Which query parameters control pagination and search?

Parameter Required? What it does Notes 
page No Page number to fetch Typically starts from 1 
pageSize No Number of teams per page Defaults to 10; can be set between 1 and 100 
searchKey No Filter results by team attributes (e.g., teamname, teamId) Useful for quick lookups (e.g., “sales”) 

List teams request examples


curl -X 'GET' \ 
  'https://api.boldsign.com/v1/teams/list?page=1&pageSize=10&searchKey=sales' \ 
  -H 'accept: application/json' \ 
  -H 'X-API-KEY: {your API key}' 
    

var apiClient = new ApiClient("https://api.boldsign.com", "Your_API_Key"); 
var teamClient = new TeamClient(apiClient); 
var teamList = teamClient.ListTeam(1,10,"sales");
    

import boldsign 

configuration = boldsign.Configuration(api_key="YOUR_API_KEY") 

with boldsign.ApiClient(configuration) as api_client: 

    teams_api = boldsign.TeamsApi(api_client) 
    team_list = teams_api.list_teams(page=1,page_size=10,search_key="sales") 
    

<?php require_once "vendor/autoload.php"; 

use BoldSign\Configuration; 
use BoldSign\Api\TeamsApi; 

$config = new Configuration(); 
$config->setApiKey('YOUR_API_KEY'); 

$teams_api = new TeamsApi($config); 
$team_list = $teams_api->listTeams($page = 1,$page_Size=10,$search_key='sales'); 
    

ApiClient client = Configuration.getDefaultApiClient();   
client.setApiKey("YOUR_API_KEY"); 

TeamsApi teamsApi = new TeamsApi(client); 

int page = 1; 
TeamListResponse teamList = teamsApi.listTeams(1, 10, "sales"); 
    

import { TeamsApi } from "boldsign"; 

const teamsApi = new TeamsApi(); 
teamsApi.setApiKey("YOUR_API_KEY"); 

const teamList = teamsApi.listTeams(1,10,"sales"); 
    

Real-world examples: how teams improve BoldSign workflows

Example 1: Create department teams for secure workspaces

Create teams like HR, Sales, Legal, and Finance so each department has a clean workspace and documents are shared only with the right group.

Example 2: Rename a team during org changes without breaking automation

If “Sales” becomes “Business Development,” update the name via the team ID so integrations continue to work without re-wiring access rules.

Summary: Managing Teams with BoldSign APIs

Teams are a foundational building block when your eSignature workflows need to reflect real organizational structure such as departments, business units, or customer tenants. With BoldSign team management documentation, you can create a team, list teams for admin UIs, fetch team details (including users), and rename teams when org structures change.

Start by running the cURL calls in your BoldSign account (sandbox or production) to validate behavior, then wrap the endpoints inside a service layer (or use the .NET SDK to reduce boilerplate). Finally, build in the essentials such as validation, pagination, and resilient error handling so your provisioning stays reliable as your customer base grows.

Ready to get started?

Sign up today for 30-day free trial and experience the full power of BoldSign advanced features. 

We’d love to hear your feedback! Drop your thoughts in the comments section below. 
Need assistance? Visit our support portal or schedule a personalized demo with our team.

FAQ

Why should I use teams with the BoldSign API? 

Using teams via the BoldSign API helps automate department-based access control, reduce administrative overhead, and ensure documents and templates are visible only to the right users. 


What authentication methods are supported for the Teams API? 

BoldSign Teams APIs support both API key authentication and OAuth 2.0 access tokens. API key authentication is commonly used for server-to-server integrations.


When is team management most useful?

Team management is most useful when multiple departments handle different document types, when sensitive templates must be restricted to specific groups, or when organizations need clear access controls for audits and compliance. 


Why should I create teams in BoldSign?

Because most organizations have multiple departments and workflows—teams help you group users, control access to templates and documents by department, and reduce manual permission management as you scale.


Like what you see? Share with a friend.

Latest blog posts

Consequential Damages: What They Are and Why They Get Excluded

Consequential Damages: What They Are and Why They Get Excluded

Understand consequential damages, direct vs consequential damages, exclusion clauses, and key examples businesses should know before signing contracts.

How to Avoid Legal Risks in Contracts Before Signing

How to Avoid Legal Risks in Contracts Before Signing

Understand legal risks in contracts caused by unclear terms, signing mistakes, missing protections, and poor records, and learn practical ways to avoid them.

BoldSign Earns 6 G2 Summer 2026 Badges of Excellence

BoldSign Earns 6 G2 Summer 2026 Badges of Excellence

BoldSign earns 6 G2 Summer 2026 badges, including Leader, Momentum Leader, and Canada regional awards, backed by real customer reviews for eSignatures.

Sign up for your free trial today!

  • tick-icon
    30-day free trial
  • tick-icon
    No credit card required
  • tick-icon
    30-day free trial
  • tick-icon
    No credit card required
Sign up for BoldSign free trial