Code42 API authentication methods
Overview
Most requests to the Code42 API must be authenticated. This article describes the available Code42 API authentication methods and provides examples of their use.
Considerations
- The examples in this article use curl, but the concepts apply to other tools that can be used to interact with the Code42 API.
Comparison of Code42 API authentication methods
The Code42 API offers the following authentication methods:
- Obtain a token with an API client (only applies to APIs in the Code42 Developer Portal): You obtain a temporary authentication token that is good for 15 minutes and use it to authenticate API requests.
- Use basic authentication (deprecated for APIs in the Code42 Developer Portal): You provide your username and password to authenticate each API request.
- Use basic authentication to obtain a token (deprecated for APIs in the Code42 Developer Portal): You obtain a temporary authentication token that is good for 30 minutes and use it to authenticate API requests.
The following table describes the advantages and disadvantages of each authentication method:
Authentication method | Advantages | Disadvantages |
---|---|---|
Obtain a token with an API client |
|
|
Use basic authentication
|
Simple to use |
|
Use basic authentication to obtain a token
|
|
|
Obtain a token with an API client
To obtain a token, first create an API client.
Use basic authentication
To use basic authentication, include your Code42 username in the API request and supply your password when prompted.
curl -u "username" <request_url>
/api/v1/Computer
Replace <request_url>
with the address of your Code42 environment (do not include the brackets in your request):
You can use basic authentication for any version 1 or 4 and later resource, and version 3's /auth/jwt resource.
Use basic authentication to obtain a token
Step 1: Get the token
- Include your Code42 username in a GET request to auth/jwt and supply your password when prompted.
Copied!
curl -u "username" '
<request_url>
/api/v3/auth/jwt?useBody=true'Replace
<request_url>
with the address of your Code42 environment (do not include the brackets in your request). The request URL you use in your authentication request depends on your Code42 cloud address.If your organization uses two-factor authentication for local users, you must also include a totp-auth header value containing the six- to eight-digit Time-based One-Time Password (TOTP) supplied by the Google Authenticator mobile app. (Sending the request without the TOTP displays the error message
TIME_BASED_ONE_TIME_PASSWORD_REQUIRED
.) The example below includes a TOTP value of 424242.Copied!curl -u "username" -H "totp-auth: 424242" '
<request_url>
/api/v3/auth/jwt?useBody=true' - From the reply, copy the value of the v3_user_token. In the example below, it is
eyJjdHki...txd546Eg
{"data":{"v3_user_token":"eyJjdHki...txd546Eg"},"error":null,"warnings":null}
Step 2: Use the token in API requests
Include that token in API requests. For example:
tkn="eyJjdHki...txd546Eg" curl --header 'Authorization: Bearer '$tkn<request_url>
/api/v1/User curl --header 'Authorization: Bearer '$tkn<request_url>
/api/v3/org/<organizationID>
/user curl -H 'Authorization: Bearer '$tkn<request_url>
/api/v4/role/view
Replace <request_url>
with the address of your Code42 environment (do not include the brackets in your request).