Recent Discussions
How are your unique visitor #s faring?
Hi all! Curious to understand how ya'll's unique visitor numbers are faring, given Google's "AI Overview" & other similar AI-based features / changes to search. Our Unique Visitors number (per Khoros Community Analytics in Classic) is down 5% compared to last December - after ~12 months of double-digit YoY comparisons - see screenshot. (This is overall Unique Visitors, not search-specific... but most of our unique visitors are search :-)). How about yours? Cheers!65Views2likes3CommentsliqlAdmin in khoros aurora graphql API
Hi Folks, I want to add roles to the users using graphQL API given below. const ADD_USER_ROLE_MUTATION = gql` mutation addUsersToRole($roleKey: RoleKeyInput!, $users: [UserIdInput!]!) { addUsersToRole(roleKey: $roleKey, users: $users) { result { id name } } } `; const [addUserRole] = useMutation(ADD_USER_ROLE_MUTATION); addUserRole({ variables: { roleKey: { roleName: "role" }, users: [{ id: userId }] } }); The issue I am facing is that when this mutation is executed by an Admin user, the role is successfully added to the target user. However, when the same mutation is executed by a normal user, it fails to add the role due to permission denied errors. Is there a parameter or keyword that can be used in this mutation to allow a normal user to update their own roles or self-related data? For example, in Khoros Classic, we can use the liqlAdmin keyword in REST API requests to bypass such permissions. Is there an equivalent for GraphQL in Khoros Aurora? Thanks in Advance.48Views0likes4CommentsTips on keeping stage and prod in alignment?
Hello developer friends! I am newer to GitHub, so please forgive me if I use the wrong terms here. :) I was wondering if anyone had any tips or tricks on how to "roll back" stage changes to bring staging back in line with prod on a regular basis? I've searched for how to do this more broadly, but what I've found doesn't seem to align well with a situation like Khoros, where there are a few developer admins with GitHub access, but everyone else is making changes directly on the site UI. Essentially, I want to be able to "undo" any unnecessary changes on Stage from people testing or experimenting before say, a Khoros update, so that we can test the new version with the site mirroring Prod as closely as possible. Any advice is welcome - and thanks in advance! :)15Views0likes0CommentsHow to retrieve "Internal reason for ban" field
Hi all, We are looking to extract some data from the "User bans" report in the (Classic) Community Admin interface, under "Mod Tools" > "User bans". When we go click on "Edit" on a particular user, we see the field "Internal Reason for ban;" how can we get a full list of banned users including the reason for ban? Is that field available via API somehow? I wasn't able to find anything. Thanks for any help, Lee30Views0likes1CommentHow to fetch all labels associated with TkbArticlePage and count how many times each label is used
I’m working with the Khoros Community platform and need to fetch all labels that are associated/tagged with TkbArticlePage articles. Additionally, I’d like to get a count of how many times each label is used across different articles. Has anyone worked with the Khoros API or any custom reporting tools that could help with this? Any tips or examples of how to achieve this would be greatly appreciated. Thanks in advance! VikasB VarunGrazitti65Views0likes1CommentGetting errror on trying to submit the plugin on dev environment
Getting the error: [UPLOAD_FAIL] The plugin was not uploaded. The plugin package file not found. On runnning 'li submit-plugin'/'li submit-plugin --force', on the dev env. The server config file looks good, has the correct URL, and the upload token. Also ran 'li package-plugin' --> created a plugin folder in the SDK; but still getting the same error. Is this a known issue? Any help would be appreciated.33Views0likes0CommentsHow to create/subscribe the Webhook in Aurora
Hello Folks, I would like to understand the steps involved in setting up a webhook, including how to create one and subscribe to it for specific events or actions. Any guidance or best practices for managing webhooks in Aurora would be greatly appreciated. Thanks in Advance.67Views1like4CommentsAPI Auth in Postman
Hi, Im a bit of a newbie here and would love some help. I am trying to complete Auth in Postman and returning 400 bad request/Invalid request or page not found when trying to obtain the code. Error: getaddrinfo ENOTFOUND {{base_community_url}} The URL is just the Community domain which is the same an the redirect URI. {{URL}}/api/2.0/auth/authorize?li_client_id={{Encoded client ID}}&redirect_uri={{Redirect URI not encoded}}&response_type=code or {{URL}}/api/2.0/auth/authorize?li_client_id={{Encoded client ID}}&redirect_uri={{Redirect URI not encoded}}&response_type=code&jwt={{SSO Toekn}} Thanks Hannah22Views0likes0CommentsError with Oauth 2.0 Client Credentials workflow
I'm trying to authenticate an api call in a typescript app using the oauth 2.0 client credentials workflow and I'm running into issues, I believe, with generating the CC Hash for this. This is for Community Classic. I have verified that I have the correct client id, client secret and shared secret key and that they're being pulled in correctly in my code. Not sure what I'm missing, but this is the error I see when I try to authenticate: {"error":"Authorization or API call failed","details":"Failed to obtain access token. Status: 403. Response: {\"status\":\"error\",\"message\":\"cc_hash is invalid.\",\"data\":{\"type\":\"error_data\",\"code\":214,\"developer_message\":\"The decryption failed. ccHash is Invalid\",\"more_info\":\"\"},\"metadata\":{}}"} Here's the relevant part of my Typescript code that's generating the CC Hash. Not sure if something is formatted incorrectly or what's not being generated correctly or causing it to return an invalid cc hash function generateCCHash(clientId: string, clientSecret: string, sharedSecretKey: string): string { try { const epochTimeMinute = getEpochTimeMinute(); const nonce = generateNonce(); const strToHash = `${clientId}:${clientSecret}:${nonce}:${epochTimeMinute}`; console.log("String to hash:", strToHash); const hash = crypto.createHash('sha512'); hash.update(strToHash, 'utf8'); hash.update(sharedSecretKey, 'utf8'); const hashResult = hash.digest('hex'); console.log("Generated hash (cc_hash):", hashResult); return hashResult; } catch (error) { console.error("Error generating CC-Hash:", error); throw error; } }35Views0likes2CommentsHandlebars Context Objects
Hi all, Just trying to see if anyone else has hit this or if its 'my head is mince syndrome'. I am trying to create a social sharing component but when is use {{page.url}} I am only getting the base url for the community. What I really want is the current page URL. I have tried every which way of the page. Context object but can't get it to spit out the current page URL.60Views0likes5Comments