curl --request GET \
--url 'https://YOURSITE.konstant.ly/openapi/v1/users?offset=20' \
--header 'X-API-KEY: 1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv'
import requests
def get_users(api_key: str, offset: int = None, query: str = None) -> dict:
url = "https://YOURSITE.konstant.ly/openapi/v1/users"
headers = {
"X-API-KEY": api_key
}
params = {}
if offset is not None:
params["offset"] = offset
if query is not None:
params["query"] = query
try:
response = requests.get(url, headers=headers, params=params)
response.raise_for_status()
return response.json()
except requests.exceptions.RequestException as e:
print(f"Error fetching users: {str(e)}")
if hasattr(e, 'response') and e.response is not None:
print(f"Response: {e.response.text}")
raise
# Example usage
if __name__ == "__main__":
try:
users_data = get_users(
api_key="1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv",
offset=20
)
print(f"Total users: {users_data['totalCount']}")
print("\nUsers:")
for user in users_data['users']:
print(f"- {user['name']} ({user['email']})")
except Exception as e:
print(f"Failed to fetch users: {str(e)}")
const axios = require('axios');
class UsersAPI {
constructor(apiKey) {
this.client = axios.create({
baseURL: 'https://YOURSITE.konstant.ly/openapi/v1',
headers: {
'X-API-KEY': apiKey
}
});
}
async getUsers(params = {}) {
try {
const response = await this.client.get('/users', { params });
return response.data;
} catch (error) {
if (error.response) {
throw new Error(`Failed to fetch users: ${error.response.data.message || error.message}`);
}
throw error;
}
}
}
// Example usage
async function main() {
const usersApi = new UsersAPI('1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv');
try {
const usersData = await usersApi.getUsers({ offset: 20 });
console.log(`Total users: ${usersData.totalCount}`);
console.log('\nUsers:');
usersData.users.forEach(user => {
console.log(`- ${user.name} (${user.email})`);
});
} catch (error) {
console.error('Failed to fetch users:', error.message);
}
}
main();
{
"users": [
{
"id": "1234567890",
"name": "John Doe",
"language": "en",
"occupation": "Salesman",
"location": "London",
"timezone": "Europe/London",
"email": "john.doe@example.com",
"isBanned": false,
"role": {
"alias": "learner"
},
"fromApi": false,
"image": null,
"attributes": {}
}
],
"totalCount": 1
}
Users
Get Users
Get a list of users (sorted by name, 20 entries per page)
GET
/
users
curl --request GET \
--url 'https://YOURSITE.konstant.ly/openapi/v1/users?offset=20' \
--header 'X-API-KEY: 1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv'
import requests
def get_users(api_key: str, offset: int = None, query: str = None) -> dict:
url = "https://YOURSITE.konstant.ly/openapi/v1/users"
headers = {
"X-API-KEY": api_key
}
params = {}
if offset is not None:
params["offset"] = offset
if query is not None:
params["query"] = query
try:
response = requests.get(url, headers=headers, params=params)
response.raise_for_status()
return response.json()
except requests.exceptions.RequestException as e:
print(f"Error fetching users: {str(e)}")
if hasattr(e, 'response') and e.response is not None:
print(f"Response: {e.response.text}")
raise
# Example usage
if __name__ == "__main__":
try:
users_data = get_users(
api_key="1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv",
offset=20
)
print(f"Total users: {users_data['totalCount']}")
print("\nUsers:")
for user in users_data['users']:
print(f"- {user['name']} ({user['email']})")
except Exception as e:
print(f"Failed to fetch users: {str(e)}")
const axios = require('axios');
class UsersAPI {
constructor(apiKey) {
this.client = axios.create({
baseURL: 'https://YOURSITE.konstant.ly/openapi/v1',
headers: {
'X-API-KEY': apiKey
}
});
}
async getUsers(params = {}) {
try {
const response = await this.client.get('/users', { params });
return response.data;
} catch (error) {
if (error.response) {
throw new Error(`Failed to fetch users: ${error.response.data.message || error.message}`);
}
throw error;
}
}
}
// Example usage
async function main() {
const usersApi = new UsersAPI('1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv');
try {
const usersData = await usersApi.getUsers({ offset: 20 });
console.log(`Total users: ${usersData.totalCount}`);
console.log('\nUsers:');
usersData.users.forEach(user => {
console.log(`- ${user.name} (${user.email})`);
});
} catch (error) {
console.error('Failed to fetch users:', error.message);
}
}
main();
{
"users": [
{
"id": "1234567890",
"name": "John Doe",
"language": "en",
"occupation": "Salesman",
"location": "London",
"timezone": "Europe/London",
"email": "john.doe@example.com",
"isBanned": false,
"role": {
"alias": "learner"
},
"fromApi": false,
"image": null,
"attributes": {}
}
],
"totalCount": 1
}
Retrieve a paginated list of users from your platform. The list is sorted by name and includes 20 entries per page.
Request Headers
string
required
API Key. Go to your Konstantly site > Settings > API and copy the value from there.
Query Parameters
string
Get user info by emailExample: user@example.com
integer
Entry number to start listing fromExample: 20
Response
array
required
Array of user objects
Show User object properties
Show User object properties
string
required
User ID, alphanumeric unique identifier
string
required
Full name of the user
string
required
Interface and notification language (one of: de, en, es, fr, pl, pt, ru)
string
Optional job title
string
Optional location
string
required
Timezone in TZ format
string
required
User email (unique across platform)
boolean
required
Whether user is banned from login
string
required
User role alias/identifier
boolean
required
Whether user is managed via API only
object
object
Custom user attributes
integer
required
The total number of users
curl --request GET \
--url 'https://YOURSITE.konstant.ly/openapi/v1/users?offset=20' \
--header 'X-API-KEY: 1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv'
import requests
def get_users(api_key: str, offset: int = None, query: str = None) -> dict:
url = "https://YOURSITE.konstant.ly/openapi/v1/users"
headers = {
"X-API-KEY": api_key
}
params = {}
if offset is not None:
params["offset"] = offset
if query is not None:
params["query"] = query
try:
response = requests.get(url, headers=headers, params=params)
response.raise_for_status()
return response.json()
except requests.exceptions.RequestException as e:
print(f"Error fetching users: {str(e)}")
if hasattr(e, 'response') and e.response is not None:
print(f"Response: {e.response.text}")
raise
# Example usage
if __name__ == "__main__":
try:
users_data = get_users(
api_key="1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv",
offset=20
)
print(f"Total users: {users_data['totalCount']}")
print("\nUsers:")
for user in users_data['users']:
print(f"- {user['name']} ({user['email']})")
except Exception as e:
print(f"Failed to fetch users: {str(e)}")
const axios = require('axios');
class UsersAPI {
constructor(apiKey) {
this.client = axios.create({
baseURL: 'https://YOURSITE.konstant.ly/openapi/v1',
headers: {
'X-API-KEY': apiKey
}
});
}
async getUsers(params = {}) {
try {
const response = await this.client.get('/users', { params });
return response.data;
} catch (error) {
if (error.response) {
throw new Error(`Failed to fetch users: ${error.response.data.message || error.message}`);
}
throw error;
}
}
}
// Example usage
async function main() {
const usersApi = new UsersAPI('1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv');
try {
const usersData = await usersApi.getUsers({ offset: 20 });
console.log(`Total users: ${usersData.totalCount}`);
console.log('\nUsers:');
usersData.users.forEach(user => {
console.log(`- ${user.name} (${user.email})`);
});
} catch (error) {
console.error('Failed to fetch users:', error.message);
}
}
main();
{
"users": [
{
"id": "1234567890",
"name": "John Doe",
"language": "en",
"occupation": "Salesman",
"location": "London",
"timezone": "Europe/London",
"email": "john.doe@example.com",
"isBanned": false,
"role": {
"alias": "learner"
},
"fromApi": false,
"image": null,
"attributes": {}
}
],
"totalCount": 1
}
Was this page helpful?
⌘I