Search Knowledge Base by Keyword
Cohesity
Overview
Cohesity is a data protection and backup platform. It consolidates backup, recovery and long-term retention for virtual machines, databases, NAS shares and physical servers onto a scale-out cluster, replacing separate backup products and their media servers. Protection policies decide what gets backed up, how often and how long copies are kept, and the cluster reports on which jobs succeeded and which objects are protected at all.
The ReadyWorks connector talks to the Cohesity cluster’s v1 public REST API. It posts a username, password and authentication domain to the access tokens endpoint, reads the bearer token from the accessToken node in the response, and sends that token on every subsequent call. Data lands in whichever staging table each job names in the estate.
Backup coverage is one of the harder things to answer across an estate, and it is exactly the kind of question a migration or decommission wave has to answer. Pulled into the fabric and reconciled against the server and application records already there, Cohesity data shows which machines are protected, which are not, and which have a policy that no longer matches what the workload has become. That turns an assumption into a gate you can enforce before a wave moves.
The connector is declared bidirectional and both job forms are fully exposed, but no Cohesity endpoint ships. Both templates are generic REST skeletons with no endpoint set, so the endpoints have to be configured against your Cohesity API documentation.
NOTE: The authentication method is not marked as the default, even though it is the only one offered. Select it explicitly when creating the connection.
Connector Properties
| Property | Value |
|---|---|
| Identifier | COHESITY |
| Name | Cohesity |
| Description | Connector for pulling and processing data from Cohesity storage systems |
| Job Types | Both Inbound and Outbound |
| Order | 310 |
| Enabled | Yes |
| Locked | Yes |
| Block Update | No |
| Single Authentication | No |
| Windows Only | No |
| Connector Version | 2026-08-10 |
| Hooks | None |
| Additional Job Fields | None |
| Image | ![]() |
Authentication Methods
One authentication method is shipped, matching the Cohesity access tokens flow.
| Method | Identifier | Base Method | Script | Order | Enabled | Config Fields |
|---|---|---|---|---|---|---|
| POST username / password / domain – return bearer token | COHESITY_452248034d |
JSON Rest API_cohesity |
json_rest_api.php |
150 | Yes | 9 |
Method 1: POST username / password / domain – return bearer token (COHESITY_452248034d)
Authentication used for Cohesity (Storage Solution)
Posts the username, password and authentication domain as a JSON body to the access tokens endpoint, reads the bearer token from the accessToken node, and attaches it as Authorization: Bearer on the data calls. All five inputs (domain, username, password, token endpoint and token node) are required, and the endpoint and node ship with working defaults for the v1 public API. The Domain value is the Cohesity authentication domain the account belongs to, which is LOCAL for a cluster-local account and the Active Directory domain name for a directory account.
Connection Configuration Fields (9)
| Order | Label | Type | Required | Default | Max Len | Tooltip |
|---|---|---|---|---|---|---|
| 10 | API Domain | text | Yes | 255 | Enter API domain of the Connection | |
| 30 | Server Temporary Working Path | text | Yes | storage/etl5 |
255 | Enter path where temporary files are stored during data processing (exclude starting and ending backslash) |
| 40 | Username | text | Yes | 1024 | Enter username of the Connection | |
| 50 | Password | password | Yes | 64000 | Enter password of the Connection | |
| 60 | Domain | password | Yes | 64000 | Enter domain of the Connection | |
| 190 | Bearer Token End Point | text | Yes | /irisservices/api/v1/public/accessTokens |
500 | Enter API end point to request a bearer token |
| 200 | Bearer Token JSON Node | text | Yes | accessToken |
255 | Enter JSON data node for bearer token |
| 240 | Single Authentication | radio | Yes | 0 |
Choose if authentication is only to be done once and not on each enumeration or pagination loop | |
| 250 | Additional Job Fields | fields_list | No | Enter list of additional fields to add to staging data for all jobs |
Authentication Configuration
Headers sent on the authentication call:
| Header | Value | Base64 |
|---|---|---|
Content-Type: |
application/json |
Off |
Headers sent on the data calls:
| Header | Value | Base64 |
|---|---|---|
Content-Type: |
application/json |
Off |
Authorization: Bearer |
%auth_data% |
Off |
Authentication request body:
| Key | Value |
|---|---|
username |
%user_name% |
password |
%user_pass% |
domain |
%auth_value_1% |
cURL options:
| Option | Authentication Call | Data Calls |
|---|---|---|
USERAGENT |
Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0 |
Same |
SSL_VERIFYHOST |
false |
Same |
SSL_VERIFYPEER |
false |
Same |
RETURNTRANSFER |
true |
Same |
FOLLOWLOCATION |
true |
Same |
FAILONERROR |
true |
Same |
POST |
true |
Same |
NOTE: The Domain field uses a masked password input, so the value is hidden as you type and stored encrypted even though a domain name is not a secret. Type it carefully, because you cannot read it back to check it.
Inbound Job Fields Enabled (44)
The inbound job form carries the full generic REST field set, including pagination, the three enumeration levels and the raw JSON body.
| Order | Label | Type | Required | Default | Tooltip |
|---|---|---|---|---|---|
| 10 | Job Description | text | Yes | Enter description of the Job | |
| 20 | Job Schedule | lookup | Yes | Daily | Select frequency Job should run |
| 30 | Enabled | radio | Yes | Yes | Choose if Job is enabled |
| 40 | Use Unparsed Data | radio | No | No | Choose if you wish to parse the incoming data, or leave it in its raw format |
| 50 | Log Raw API Calls | radio | Yes | No | Choose if raw API calls are logged |
| 70 | Destination Table | text | Yes | Enter name of the destination table | |
| 80 | Data Identity | text | No | Enter identity of the Job | |
| 120 | Append New Data to Existing Tables | radio | No | No | Choose if new data will append to the existing destination table, or will create a new destination table |
| 130 | Fields to Index | text | No | Enter fields to index | |
| 170 | Method Type | select | Yes | GET |
Select method type of the Job |
| 190 | API End Point | text | No | Enter API end point of the Job | |
| 200 | API Data Parameters | fields_list | No | Enter API data parameters of the Job | |
| 210 | Body Data Sending Method | select | Yes | JSON Encoded Data | Select method for sending the body data |
| 220 | Raw JSON Body Data | textarea | No | Enter the raw JSON body to send. Do not use body selections in the API Parameters if this is used. | |
| 230 | API Return Data Node | text | No | Enter API return data node of the Job | |
| 250 | Pagination Type | select | No | None | Select request paging type of the Job |
| 270 | API Pagination Node | text | No | Enter API pagination node of the Job | |
| 280 | Pagination Offset Start | text | No | Enter request paging offset start of the Job | |
| 290 | Pagination Limit | text | No | Enter request pagination limit of the Job | |
| 300 | Pagination Termination Node | text | No | Enter request paging termination node and value of the Job | |
| 310 | Maximum API Calls | text | No | Enter maximum number of API calls for the Job to make | |
| 320 | Enumeration 1 Type | select | No | None | Enter enumeration level 1 type |
| 330 | Enumeration 1 ETL Job | lookup | No | Select ETL job for the enumeration values | |
| 340 | Enumeration 1 Data Type | data_type | No | Select the data type and fields for enumeration 1 values | |
| 350 | Enumeration 1 Keys End Point | text | No | Enter enumeration 1 keys end point of the Job | |
| 360 | Enumeration 1 Node | text | No | Enter enumeration 1 node of the Job | |
| 370 | Enumeration 1 Fields | fields_list | No | Enter enumeration 1 fields of the Job | |
| 380 | Enumeration 2 Type | select | No | None | Enter enumeration level 2 type |
| 390 | Enumeration 2 ETL Job | lookup | No | Select ETL job for the enumeration 2 values | |
| 400 | Enumeration 2 Data Type | data_type | No | Select the data type and fields for enumeration 2 values | |
| 410 | Enumeration 2 Keys End Point | text | No | Enter enumeration 2 keys end point of the Job | |
| 420 | Enumeration 2 Node | text | No | Enter enumeration 2 node of the Job | |
| 430 | Enumeration 2 Fields | fields_list | No | Enter enumeration 2 fields of the Job | |
| 440 | Enumeration 3 Type | select | No | None | Enter enumeration level 3 type |
| 450 | Enumeration 3 ETL Job | lookup | No | Select ETL job for the enumeration 3 values | |
| 460 | Enumeration 3 Data Type | data_type | No | Select the data type and fields for enumeration 3 values | |
| 470 | Enumeration 3 Keys End Point | text | No | Enter enumeration 3 keys end point of the Job | |
| 480 | Enumeration 3 Node | text | No | Enter enumeration 3 node of the Job | |
| 490 | Enumeration 3 Fields | fields_list | No | Enter enumeration 3 fields of the Job | |
| 500 | Pause Enumeration | text | No | Enter values for pausing enumeration every X calls for Y seconds | |
| 510 | Kill Enumeration on Error | radio | No | No | Choose to stop the enumeration loop on an error or continue processing the loop |
| 520 | Additional Fields | fields_list | No | Enter list of additional fields to add to staging data | |
| 550 | Retry Pause | text | No | Enter values for retrying a failed API connection. Retry X times, waiting Y seconds between each try, with an API timeout of Z seconds. | |
| 560 | Order | text | Yes | Enter order of the Job |
NOTE: Several labels and tooltips carry unedited text from the shared templates. Enumaration 1 Node is misspelled and the tooltip on Enumeration 1 Keys End Point refers to enumeration 2. The fields behave as their level numbers say.
Outbound Job Fields Enabled (13)
Thirteen outbound job fields are exposed, covering the endpoint, method type, data sending methods, the outbound and return field lists and a raw JSON template that overrides the generated body.
| Order | Label | Type | Required | Default | Tooltip |
|---|---|---|---|---|---|
| 10 | Job Description | text | Yes | Enter description of the Job | |
| 30 | Enabled | radio | Yes | Yes | Choose if Job is enabled |
| 50 | Log Raw API Calls | radio | Yes | No | Choose if raw API calls are logged |
| 170 | Method Type | select | Yes | GET |
Select method type of the Job |
| 180 | Data Sending Method | select | Yes | JSON Encoded Data | Select method for sending the outbound data |
| 190 | API End Point | text | No | Enter API end point of the Job | |
| 200 | API Data Parameters | fields_list | No | Enter API data parameters of the Job | |
| 210 | Body Data Sending Method | select | Yes | JSON Encoded Data | Select method for sending the body data |
| 260 | Return Data Fields List | fields_list | Yes | Enter return data fields of the Job | |
| 530 | Outbound Fields List | fields_list | Yes | Enter outbound fields of the Job | |
| 540 | Ignore Empty Outbound Fields | radio | No | Yes | Ignore, and do not include, any outbound fields that are empty and have no data |
| 550 | Raw JSON Outbound Template | textarea | No | Enter the raw JSON outbound template to send. This will replace any automated structures defined in the outbound fields. | |
| 560 | Order | text | Yes | Enter order of the Job |
Inbound Job Templates (1)
One inbound template ships, and it is a blank REST skeleton rather than a Cohesity job.
| # | Job Description | Destination Table | API End Point | Enabled | What It Pulls |
|---|---|---|---|---|---|
| 1 | Rest GET API | api_data |
Not set |
No | An empty GET skeleton with no endpoint set, writing to a staging table called api_data. Copy it once per Cohesity collection you want, fill in the API End Point and Destination Table, and set API Return Data Node to the node holding the record array. |
Job Template Configuration
Settings
| Setting | Value |
|---|---|
| Order | 10 |
| Enabled | No |
| Job Schedule | Daily (15 1 * * *) |
| Destination Table | api_data |
| Data Identity | api_data |
| Allow Empty Table | Yes |
| Append Files to Same Destination Table | No |
| Append New Data to Existing Tables | No |
| Use Unparsed Data | No |
| Convert UUID-Keyed Objects to Rows | No |
| Ignore XML Attributes | No |
| Log Raw API Calls | No |
| Method Type | GET |
| Body Data Sending Method | JSON Encoded Data |
NOTE: The template ships disabled. Nothing is retrieved until you configure an endpoint and enable a job.
NOTE: The authentication endpoint default shows the v1 public API prefix, /irisservices/api/v1/public/. Job endpoints on the same API follow that prefix, which is a useful starting point when you build the first job.
Outbound Job Templates (1)
One outbound template ships as a generic shell.
| # | Job Description | Method | API End Point | Enabled | What It Does |
|---|---|---|---|---|---|
| 1 | Rest POST API | POST |
Not set |
No | A disabled POST skeleton with no endpoint set. It sends a single Record Key field and expects status, message and data.record_key back. Configure the endpoint and field lists to match the Cohesity call you intend to make. |
Job Template Configuration
Settings
| Setting | Value |
|---|---|
| Order | 10 |
| Enabled | No |
| Log Raw API Calls | No |
| Method Type | POST |
| Body Data Sending Method | JSON Encoded Data |
| Data Sending Method | JSON Encoded Data |
| Ignore Empty Outbound Fields | Yes |
Job Parameters and Enumeration
Rest POST API
Outbound fields list:
| Label | Name | Type | Required | Pattern |
|---|---|---|---|---|
Record Key |
record_key |
String | on |
Return data fields:
| Label | Name |
|---|---|
Return Status |
status |
Return Message |
message |
Record Key |
data.record_key |

