ODBC Driver for Slack

Build 24.0.9060

UserProfile

Retrieve a user's profile information, including their custom status. This table supports only Select and Update operations.

Select

The driver will use the Slack API to process search criteria that refer to the UserId column. This column support server-side processing for the =,IN operator. The driver processes other filters client-side within the driver.

For example, the following queries are processed server side by the Slack APIs:

SELECT * FROM UserProfile WHERE UserId='W1234567890';
SELECT * FROM UserProfile WHERE UserId in ('W1234567890','W1234567891','W1234567892');

Insert

Slack does not support inserting new users.

Update

There are a number of requirements for updating the user profile:

  • Workspace must be on a paid plan to update the profile value for other users.
  • Must select “API” as the “Data source” within the Configure Profiles admin tool.
  • This operation requires to use a user access token (Not a bot token) that is users.profile:write.
  • Org users cannot change their own profile details.
  • You cannot change the profile details for another user unless you use a token that was generated by an Owner or Admin.
  • You also can only change the profile details for a user if your role level is higher than theirs.

You can update a user profile by providing the Id of the user. For example:

UPDATE UserProfile SET DisplayName = 'Steve', RealName='Steve Smith' , customfields='{"Xf0111111": {"value": "Engineer","alt": ""},"Xf0222222":{"value": "2022-04-11","alt": ""}}', StatusText='riding a train', StatusEmoji=':train:' WHERE userId = 'W1234567890';

Delete

Slack does not support deleting users.

Columns

Name Type ReadOnly Description
AvatarHash String True

Avatar Hash

DisplayName String False

The display name the user has chosen to identify themselves by in their workspace profile.

DisplayNormalisedName String True

The DisplayName field, but with any non-Latin characters filtered out.

Email String False

The Email of the user. The users:read.email OAuth scope is required to access the email field.

CustomFields String False

All the custom profile fields for the user.

FirstName String False

The user's first name

LastName String False

The user's last name.

Phone String False

The user's phone number, in any format.

ProfileImage1024 String True

URL to square, web-viewable image of a user's profile of size 1024.

ProfileImage192 String True

URL to square, web-viewable image of a user's profile of size 192.

ProfileImage24 String True

URL to square, web-viewable image of a user's profile of size 24.

ProfileImage32 String True

URL to square, web-viewable image of a user's profile of size 32.

ProfileImage48 String True

URL to square, web-viewable image of a user's profile of size 48.

ProfileImage512 String True

URL to square, web-viewable image of a user's profile of size 512.

ProfileImage72 String True

URL to square, web-viewable image of a user's profile of size 72.

ProfileImageOriginal String True

URL to square, web-viewable image of a user's profile of original size.

IsCustomImage Boolean True

Whether the image of a user's profile is custom image or not.

Pronouns String False

The pronouns the user prefers to be addressed by.

HuddleState String True

Huddle state of the user.

HuddleStateCallId String True

Call Id of the huddle state

HuddleStateExpirationTime Datetime True

The timestamp of when the huddle state will expire.

RealName String False

The user's first and last name.

RealNormalisedName String True

The RealName field, but with any non-Latin characters filtered out.

Skype String True

A shadow from a bygone era. It will always be an empty string and cannot be set otherwise.

StartDate String False

The date the person joined the organization.

StatusEmoji String False

The displayed emoji that is enabled for the Slack team, such as :train:.

StatusEmojiDisplayInfo String True

The information about the status emoji display.

StatusExpireTime Datetime False

The timestamp of when the status will expire. Providing 0 or omitting this field results in a custom status that will not expire.

StatusText String False

The displayed text of up to 100 characters.

StatusTextCanonical String False

The Status text of the user.

Title String False

The user's title.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements. These offer a more granular control over the tuples that are returned from the data source.

Name Type Description
UserId String

User Id to retrieve profile info for.

IncludeLabels String

Include labels for each ID in custom profile fields. Using this parameter will heavily rate-limit your requests and is not recommended. Default value is False

Copyright (c) 2024 CData Software, Inc. - All rights reserved.
Build 24.0.9060