- White Label – Fully branded solutions where Captain Data runs in the background, allowing your brand to take the spotlight.
- White Label — Stealth Mode – Run Captain Data’s API with rented LinkedIn accounts—no Chrome Extension required. Check out this article for more information: When to Sync Identities vs. Use Rented LinkedIn Accounts
- Grey Label – Combine Captain Data’s Chrome Extension with shared accounts, utilizing our branded Captain Data connection flow.
- Users: Each user on your SaaS corresponds to a user in Captain Data. Think of a user as a license that enables automation for that individual.
- Accounts: Accounts are the specific integrations (like LinkedIn) attached to a user, allowing them to run automations on specific platforms.
White Label

Process to create your Users using our API - White Label
Ensure that you store the UIDs at each step.
Grey Label

Process to create your Users using our API - Grey Label
shared_account to true when adding the account.
This lets you generate a link like this: https://app.captaindata.co/integrations/linkedin/accounts/{user_id}.
Share this link with your user, and they will install the Captain Data Chrome Extension to sync their account. Their LinkedIn account will then be linked to their Captain user.
1. Add or Update a User
To enable automation for a user, create the user by sending a POST request to the Create or Update a User endpoint:Request Body
Here’s an example of the request body:Explanation of the Fields
| Field | Required? | Description |
|---|---|---|
| Optional | The user’s email address. | |
| full_name | Required | The user’s full name. |
| country | Required | ISO 3166-1 alpha-2 code (e.g., US, FR, DE). Used to provision a proxy IP within this country. |
| uid | Required to Update operation only | Leave this field empty to create a new user. Provide a UID to update an existing user. |
Prohibited Country Codes
You can use any ISO 3166-1 alpha-2 country code except the following:Save the user_uid
Once the request is successful, Captain Data will return a user_uid.
Save this user_uid in your own user database so you can link it to the accounts you create later.
This user_uid is required to create integration accounts for this user.
2. Add or Update an Integration Account
Once you have created a user, the next step is to attach an integration account. This account enables the user to automate specific platforms, like LinkedIn, through Captain Data. To create or update an integration account, use the POST method for the Add or Update Integration Account endpoint:Request Body
Here’s an example for a COOKIES integration type (like LinkedIn):Explanation of the Fields
| Field | Required? | Description |
|---|---|---|
account.uid | Optional | If provided, updates an existing account. If empty, creates a new account. |
account.name | Required | Name of the integration account (e.g., “LinkedIn Account 1”). |
account.cookies | Required (if COOKIES) | For COOKIES integration types, provide authentication cookies here. |
account.user_uid | Required | The user_uid linked to this account (from the previous step). |
resume_paused_jobs | Optional | Resumes any paused jobs once the cookie is valid again. Default: false. |
shared_account | Optional | Boolean flag to indicate if you need to create a shared account. Default: false. |
retrieve_ip | Optional | Boolean flag to retrieve IP information. Default: false. |
li_a token, the connection may not work properly with LinkedIn Sales Navigator.
Including the li_a token will also speed up account synchronization.
Supported Authentication Types
Captain Data supports the following integration types:- COOKIES (like LinkedIn)
- OAUTH
- APIKEY
- BASIC
Save the account_uid
Once the request is successful, Captain Data will return an account_uid.
Save this account_uid in your own database model for the user. You will need this account_uid to launch jobs for this account.
3. Launch a Workflow
With theaccount_uid in place, you can now trigger automations.
To do so, use the POST method for the Launch a Workflow endpoint.
account_uid of the integration account for which you want to launch the workflow.
This enables you to run automations for the user using the accounts they have connected.
For example in a step:
Shared Accounts
A Shared Account allows external users to connect their accounts via a Captain Data shared link, which grants them access to sync their credentials. Unlike regular users, Shared Accounts do not have access to the Captain Data workspace, but they can still be used for automations via the API. Shared Accounts must be defined during the creation process (Add) and cannot be modified later. To create an external user as a Shared Account and provide them with a Captain Data shared link to update or refresh their account, include the following payload:4. Updating Accounts
How to Update an Account
Normally, you’d use Captain Data’s Chrome Extension to refresh cookies automatically. If you’re building your own Chrome Extension, you must ensure that user cookies are updated regularly to maintain uninterrupted service. 👉 Follow our guide on Building Chrome Extensions Best Practices for detailed instructions.How to Update Cookies Using the API
To update cookies or other account details, you’ll use the same POST method as before: Add or Update Integration Account- Pass the existing
account_uidin the request body. - Provide the new cookie value or any updated field.
- Captain Data will recognize that the account exists and update the stored information accordingly.
- Use the existing
account_uidto update the account. - If you only need to update cookies (like
li_at), you can leave other fields unchanged. - For LinkedIn Sales Navigator, also ensure you update the
li_acookie to maintain the connection.

How-to setup accounts update using a Chrome a Extension
5. Deleting Accounts
If you delete a user from your app, remember to also remove them from Captain Data. This helps prevent unnecessary charges and keeps your user data in sync. To delete a user, use the DELETE method on the Remove User endpoint:- This action will completely remove the user and any linked integration accounts.
- Make sure to remove users from both your app and Captain Data to keep everything in sync.
- Deleting users also prevents unwanted billing charges related to user licenses.
6. Enabling auto-manage & billing with the API
You can automate user license provisioning using Captain Data’s auto-manage feature. This allows you to dynamically add or remove users via the API and automatically manage subscription upgrades.- Go to Settings: My Account > Users > Settings
- Check the box: “Enable users management from the API”
- Once enabled, any new user added via the API will automatically trigger an update to your subscription plan.
- The maximum user limit is set to 0 by default, which allows for an unlimited number of users.
- To avoid unexpected subscription increases, you can set a maximum number of users in the settings.

If you activate this feature, new users will be automatically billed to your subscription.
Example Use Case
Imagine you have a SaaS app where you dynamically add users. When a new user signs up, you can:- Call Captain Data’s API to provision a new user.
- This feature automatically increase the number of Captain Data users in your subscription plan.
- Should you remove the user for inactivity, this will decrease the number of users (at the end of the billing cycle)