Retrieve KabutoCustomerID via API (or other means)?

Hello everyone,

Do any of you know how I can retrieve a KabutoCustomerID (the one used in the command-line installation method) without having to actually manually go into the Syncro Dashboard and look it up?

Any help would be GREATLY appreciated!

You can use the API to get the customer ID.

This is the command:

curl -X GET "https://[YOUR_SUBDOMAIN][SEARCH_QUERY]" -H "accept: application/json" -H "Authorization: [API_KEY]"

To use it replace the following fields:

  • Replace [YOUR_SUBDOMAIN] with your account’s subdomain
  • Replace [SEARCH_QUERY] with what you want to search for the customer with. This could be the customer’s name, business name, phone number, or email address. You can also dial in the search to search a specific field. The options can be found here: SyncroMSP API Docs
  • Replace [API_KEY] with an API key from your account that has permission to view customers.

The ID will be displayed with the rest of the customer details in the response:

Also, the Agent Installer script found in our App Center does this lookup automatically. The ID is also found in the URL when you go open the customer’s profile in Syncro.

Hey @Frank !

Thanks for the reply.
While I can obtain the “Customer ID” you’re referencing via API, my understanding is that the CustomerID I’m looking for is different from the one returned via that GET request. See Screenshot from Syncro’s Help doc below:

Pulled from here: Installing Syncro Agent via Existing Assets from another RMM - Silent Agent Installs

In my testing, the “CustomerID” being referenced in the screenshot above seems to be different than the one returned via API.

The ones via API begin with 2 and the ones found in the “command-line” install window begin with 7.

Any ideas there?

I’ll admit, I’ve not used the “Search Query” format during my API requests, nor have I worked with the Agent Installer.

Any docs out there to help better understand the use case/power etc of the Agent Installer?

Thanks in advance!

1 Like

@Frank Just realized that we never heard back from you about this.
Any updates? Best I can tell, we’re trying to figure out how to get what’s referred to as the “Kabuto ID” for the Customer via API.

Any ideas?

1 Like

also very interested in this

1 Like

What information do you have to start from with this? Are you at the asset, or do you have the customer name, or something else?

From the Asset, once the installer has done it’s thing you can get the AssetID, then call the APIs to get what you want from there.

If a machine only has recently had the syncro agent installed you have to allow time for it to install and sort out all the bits and pieces.

We didn’t find a reliable way without manual intervention to get the customer id, and the kabuto id (which doesn’t get reliably created until you start to create agent links) and for a while used a default customer (one we created for the purpose to pre-allocating the agent links) and then moved the asset to the correct customer, via the ticket number.

Because of the unknown time from when we installed the generic agent to when you have the correct asset id allocated it was unreliable.

Now we use a ticket with a link added to the comments and that way we just have the ticket id to select and everything else is then available from the APIs.


Prior to installing any syncro agents, and even before the customer has any assets you can get the kabuto id.
First, get the id of the customer using the API
get /customer

then use the id to call the customer record again, but this time using the API
get /customer/{id}

The kabuto id for the customer will be in the API response.

@andrewd Until we MANUALLY go “create agent links”, calling it via API returns:

Am I missing something?

btw…to reproduce what I’m referring to:

  1. Create a new customer via API
  2. Immediately get the ID via “get / customer”
  3. Immediately call the customer record via “get /customer{id}”

You’ll get a “null” response for Kabuto ID

I haven’t created a customer by the API.
If you follow this process

  1. Create a new customer via WebUI
  2. Immediately using the API get the ID via “get / customer”
  3. Immediately using the API call the customer record via “get /customer{id}”

Then the Kabuto ID is not null.

What we are all missing is professionally written documentation for the API. The current documentation is terrible.

If we look at this URL.
SyncroMSP API Docs
the example response in the documentation shown doesn’t even have kabuto_customer_id listed, yet we both know that /customers/{id} returns kabuto_customer_id