CTIX
Network live
CTIXPOST

Add User

Source docs
POSThttps://cs-testv2.cyware.com/ctixapi/rest-auth/users/

Adds a user in Intel Exchange.

Body Parameters

NameTypeRequiredDescription
first_namestringrequired

Pass the first name of the user.

last_namestringrequired

Pass the last name of the user.

usernamestringrequired

Pass the LDAP username associated with a user.

emailstringrequired

Pass the Intel Exchange associated email ID of the user to whom all the emails will go.

groupsarrayrequired

Pass the list of permission groups where the user is enlisted.

is_activebooleanoptional

Pass True to make a profile active. Else pass False.

contact_numberstringoptional

Pass the contact details, like the phone number or mobile number of the user.

country_codestringoptional

Pass the country code in which the user is located.

email_alertsbooleanoptional

Pass True if the user wants to receive email alerts on the associated Intel Exchange email ID. Else pass False.

sms_alertsbooleanoptional

Pass True if the user wants to receive SMS alerts on the Intel Exchange associated contact number. Else pass False.

allowed_tlparrayoptional

Pass the list of allowed TLPs that a user can access and view threat data. If no TLPs have been selected, the user can access threat data from all TLPs.

Run it

Use the Request parameters panel to enter path IDs, query values, JSON body, and credentials. Then run any snippet below — all languages use the same values. Base URL: https://cs-testv2.cyware.com/ctixapi (change in API Settings).

Playground

Request parameters

Edit values here before running any snippet below (cURL, JavaScript, or Python). Code blocks are reference only — your inputs above are what gets sent.

CTIXConnect to Intel ExchangeRequired to change data
Credentials required for POST

Open API (HMAC signature) · Get credentials from Cyware Admin → Open API → Generate Credentials.

Signature and Expires are generated when you run a request. Access ID and Secret Key stay in memory for this tab only.

Credentials from Authentication auto-fill here for this product. If fields are empty after connecting, refresh this page or open the product docs again.

Request body (JSON)Valid JSON
cURL
curl --request POST \
  --url "https://cs-testv2.cyware.com/ctixapi/rest-auth/users/?AccessID=%3Cyour%20access%20id%3E&Signature=%3Cyour%20signature%3E&Expires=%3Cyour%20expires%3E" \
  --data '{
  "first_name": "John",
  "last_name": "Doe",
  "username": "JohnDoe",
  "email": "johndoe@orgname.com",
  "groups": [
    {}
  ],
  "is_active": true,
  "contact_number": "9876543219",
  "country_code": "91",
  "email_alerts": true,
  "sms_alerts": true,
  "allowed_tlp": [
    "WHITE"
  ]
}'

View-only example — running live API calls requires a role with snippet testing access.

JavaScript
const url = "https://cs-testv2.cyware.com/ctixapi/rest-auth/users/?AccessID=%3Cyour%20access%20id%3E&Signature=%3Cyour%20signature%3E&Expires=%3Cyour%20expires%3E";

const response = await fetch(url, {
  method: "POST",
  headers: {},
  body: JSON.stringify({
    "first_name": "John",
    "last_name": "Doe",
    "username": "JohnDoe",
    "email": "johndoe@orgname.com",
    "groups": [
      {}
    ],
    "is_active": true,
    "contact_number": "9876543219",
    "country_code": "91",
    "email_alerts": true,
    "sms_alerts": true,
    "allowed_tlp": [
      "WHITE"
    ]
  }),
});

const text = await response.text();
let data;
try { data = JSON.parse(text); } catch { data = text; }
console.log(response.status, data);

View-only example — running live API calls requires a role with snippet testing access.

Python
import requests

url = "https://cs-testv2.cyware.com/ctixapi/rest-auth/users/"
params = {
    "AccessID": "<your access id>",
    "Signature": "<your signature>",
    "Expires": "<your expires>"
}
headers = {}
payload = {
  "first_name": "John",
  "last_name": "Doe",
  "username": "JohnDoe",
  "email": "johndoe@orgname.com",
  "groups": [
    {}
  ],
  "is_active": true,
  "contact_number": "9876543219",
  "country_code": "91",
  "email_alerts": true,
  "sms_alerts": true,
  "allowed_tlp": [
    "WHITE"
  ]
}
response = requests.request("POST", url, params=params, headers=headers, json=payload)
print(response.status_code)
print(response.text)

View-only example — running live API calls requires a role with snippet testing access.

Request Body
{
  "first_name": "John",
  "last_name": "Doe",
  "username": "JohnDoe",
  "email": "johndoe@orgname.com",
  "groups": [
    {}
  ],
  "is_active": true,
  "contact_number": "9876543219",
  "country_code": "91",
  "email_alerts": true,
  "sms_alerts": true,
  "allowed_tlp": [
    "WHITE"
  ]
}

View-only example — running live API calls requires a role with snippet testing access.

Example Response
{
  "id": "cf0e148b-5f7a-4f05-8f4d-081fa1743231",
  "first_name": "John",
  "last_name": "Doe",
  "email": "johndoe@orgname.com",
  "is_active": true,
  "contact_number": "9876543219",
  "country_code": "91",
  "user_id": "",
  "email_alerts": true,
  "sms_alerts": true,
  "allowed_tlp": [
    "WHITE"
  ],
  "details": "Successfully Created"
}

View-only example — running live API calls requires a role with snippet testing access.