Update Allowed Labels List via API
We are planning on implementing a standard set of pre-defined labels across most boards in our community. We understand that this list is maintained in the admin section independently for each board. Our labels list will align to a centralized company-wide taxonomy that will be updated semi-regularly. We would like to know if it is possible use the API to manage the pre-defined labels list, so we can avoid having to update each board every time there is a change?Cloudera6 years agoMentor64Views0likes0CommentsPulling community data to an external site
Hi, Hoping this is a simple enough request, but a search didn't yield any results to help explain what needs to be done. Our organisation would like to pull some community threads into a module on a non-community web page. I'm familiar with the API calls to build what they need, but I've not done so for the data to be external to community and therefore making those calls on the community API. Does anybody have any experience of doing this? If so, could you provide any practical tips for what would need to be done? Do I still use FreeMarker, or would it need to be done like an AJAX request since it's on a different server to community? Thanks in advance, KevSolvedKev_B6 years agoAdvisor261Views0likes7CommentsIntegration with Acclaim? (for badges)
Just curious, has anyone integrated with Acclaim?https😕/www.youracclaim.com/issue-badges We had a community member ask if our community badges were compatible with that, and I believe that the answer is "no" (unless we do some integration work). True?90Views0likes1CommentLI Developer Needed for Short term
Hi! We are nearing a launch and in need of a developer who is experienced in Lithium work. We need to hire through upwork - we can provide a link if someone is interested. Does anyone know if there a job board where I should put this? (and HUGE bonus if experience with Salesforce integration)katiepbussey6 years agoExpert112Views0likes1CommentHow to move posts using REST API?
Hi there, we're trying to build an Admin App using Lithium's REST API. We can't find a way to move posts/messages though. The usual suspects in the REST API JavaDoc "Message" and "MessageDiscussion" don't seem to offer a method/call to perform a move. Any ideas?392Views2likes5CommentsGetting unauthorized error while trying to access apis
I am trying to access the response generated here with postman or an ajax call: https://logmein.stage.lithium.com/api/2.0/search?q=SELECT+%2A+FROM+messages This works fine when entered in the search bar of the browswer. I am able to get the response I want, but when I make an ajax call with that url, or use postman to access it, I get an Unauthorized (401) error. Below is the url which I generated by following the documentation here, with my client_ID and redirect_url. https://[myCompany].stage.lithium.com/auth/oauth2/authorize?client_id=[My Client ID]&response_type=code&redirect_uri=[my redirect page]/getaccessToken Also, using postman, I get the unauthorized 401 error.amandeepmaman6 years agoContributor217Views1like2CommentsCan I use keyword "or" in API browser?
When I search: select id from messages where labels.text='Nursing' the API browser returns 3 results. When I search: select id from messages where labels.text='Project Manager' the API browser returns 2 results. However, when I search: select id from messages where labels.text='Project Manager' or labels.text='Nursing' 0 results are returned. Not an error message, just 0 results. Am I doing something wrong? Is there not the ability to search with the keyword "or"? I don't understand how I am getting these results.SolvedLindsey6 years agoLeader154Views1like2CommentsHow can I retrieve messages marked as spam via REST API?
When querying the messages collection object via REST API using the message id of any spam message, I get 200 with no items returned. Being a moderator, I can see those messages in browser using the same id in the URL but can't retrieve the message via API. Is it moved into another collection in the backend? Appreciate any help on this. Thank you, Yathaarthdhx-ds6 years agoContributor145Views0likes3CommentsNested Category Not Displaying in Navigation
I've searched the forum and didn't find a solution. We're adding a large number of discussion forums, so I'd like to house these within a category inside the larger Discussions category. This is what it looks like in the admin tool: The reason I'm doing this is so the 15 forums don't clog up the navigation menu. I was expecting to see the new Investing Forums category within the navigation tray under Discussions, but it is not visible. Is there an admin setting I'm missing, or is a code change necessary?229Views0likes5CommentsGetting SLE value in Email Template using Velocity
Hey all. I want to get one of the setting's values given in the Settings List Editor in the email templates and then after getting the value, I have to customize the template's content. How can I call the setting using Velocity variables and context objects? If anyone knows anything about this then please let me know. Thanks in advance.pp_016 years agoMentor204Views0likes5CommentsFilter LiQl call by user last_vsit_time
Hi, I have a statementthat returns user, login, solution authored(sum), last_visit_time etc. SELECT login, last_visit_time, kudos_received.sum(weight), messages.count(*), solutions_authored.count(*) FROM users WHERE roles.id='t:Moderator' LIMIT 1000 I would like to filter the results from a certain activitydate (i could not find any other DateTimesetting for users) but when a put the last_visit_time in the where clause I get an error. FROM users WHERE roles.id='t:Moderator' AND last_visit_time >2019-01-01T00:00:00.000-07:00 Is it possible filter on the last_visit_time or am i doing it wrong? Is there an alternative to filtering the calls to users according to a Date/Time?Kallie6 years agoGuide110Views0likes2CommentsTracking clicks on a custom content module
Hi ya'll - Happy Friday! We've just added a couple of new modules into our community via custom content, and we'd like to see if they are getting clicked on. One of them leads to SSO sign-in (so, a click that leads OUTSIDE the community), and another leads to a blog post in the community. I believe I can do this click-tracking with Google Analytics Events, but I haven't done it before and am a little intimidated by the documentation (my level of Javascript / coding is pretty minimal at this point). Does anyone have guidance on how to implement this click tracking? I do have GA embedded into my site, but haven't done anything with events. Cheers! - Caroline81Views0likes1CommentSubqueries
Hi, I’m busy writing REST calls using API v1 to import data directly to Excel using the REST Call. I noticed when accessing the “tracker” page for a user on the community the REST call in the around (using Fiddler) looks something like this (raw text view) select:[{field:categories,expand:{select:[id,title,view_href,parent_category.id],from:categories,where:[{field:hidden,operand:=,value:false}],orderBy:{field😛osition,direction:ASC},limit:1000}},{field😛oards,expand:{select:[id,title,view_href,conversation_style,parent_category.id],from😛oards… In seeing this I would like to know id it possible to use subqueries in a LiQL query? Looking at above it seems that Lithium is doing it. If so, is there any documentation available ThanksKallie6 years agoGuide103Views0likes1Commentreplacing image: still old image shown
Dear Community, I replaced an image and published the changes. On our stage community the new image is shown. But on our production community still the old one is shown? I also cleared my browser cache and tried in another browser? Are the images also cached on Lithium side? Can I clear the cache or force anyhow the update? Thank you, best clemenswclemensw6 years agoGuide96Views0likes2Commentspage.context.user on MediaGalleryPage
Is there any particular reason why MediaGalleryPages don't have the page.context.user context variable available on them? Found it a little strange, we're adding logic to our analytics and while the Profile pages and badges pages have the variable available for us to use, these pages don't. Considering they belong to a user it would make sense for that context object to be available.139Views1like4CommentsCustomize Post a Question Button
We would like to either suppress the Post a Question button or redirect it to the Case Portal page (/t5/crmsupport/page) if a user has a certain role. Khoros previously developed a custom component for the post button. The code is pasted below. I'm wondering if more could be added to the text below to change the behavior of the button for two new roles. <#include "theme-lib.common-functions.ftl" /> <#assign postUrl = "" /> <#switch page.name> <#case "CategoryPage"> <#assign postUrl = webuisupport.urls.page.name.PostPage.path("category-id",coreNode.id).path("choose-node","true") /> <#break> <#case "ForumPage"> <#case "ForumTopicPage"> <#assign postUrl = webuisupport.urls.page.name.PostPage.path("board-id",coreNode.id) /> <#break /> <#default> <#assign postUrl = webuisupport.urls.page.name.PostPage.path("choose-node","true") /> <#break /> </#switch> <#if postUrl?? && postUrl?has_content> <#attempt> <#assign rolesQuery = "select * from roles where users.id = '${user.id?c}'"/> <#assign rolesList = executeLiQLQuery(rolesQuery, false, true) /> <#list rolesList as role> <#if role.name?lower_case == "direct"> <#assign postUrl = postUrl.path("product-id","Direct")/> <#elseif role.name?lower_case == "office"> <#assign postUrl = postUrl.path("product-id","Office")/> </#if> </#list> <#recover> </#attempt> </#if> <#assign postUrl = postUrl.build() /> <#if postUrl != ""> <div class="post-btn-wrapper lia-button-wrapper"> <a href="${postUrl}" class="post-btn lia-button lia-button-primary">${text.format("menubar.button.new_message")}</a> </div> </#if>Solved229Views0likes4CommentsIntegrating custom Ideas Exchange integrations w/ Slack or Email
Hi there, We are looking for a way to send internal notifications to our Product Management teams when an Idea w/ a certain labels hit a certain # of votes. We'd like for either a Slack or Email notification to be sent. For example: An Idea w/ label 'Social Tool' hit 20 votes, a notification is immediately sent via email or a Slack channel to an assigned list of emails (i.e. PMs on our Social Tool team). Does this make sense? If this isn't out-of-the-box please advise on if/how we can leverage APIs, integrations, Zapier etc.HSCommunity6 years agoExpert195Views0likes4CommentsConfigure pop-up notifications to not disappear
We are wanting our real time pop-up notifications to remain on the page and stack on top of one another until the user clicks the "x" on the pop-up. Is this possible? We are also wanting the subscription notifications to contain the entire content of the message, rather than just saying a user posted a reply. Is this something we are able to do as well? Thanks!SolvedLindsey6 years agoLeader115Views0likes2CommentsHow do you manage publish-to-prod releases?
Hi ya'll! Looking for some words of wisdom / advice about how to manage publish-to-prod on the Lithium platform. I find it challenging that some configuration-y things (e.g. badge images) are in staging, as are development-y things (css changes, new components, etc). Tonight I needed to launch a new badge, but there's also some CSS that's acting a bit wonky... and I needed to pick the lesser of 2 evils (not having the badge ready on time vs having a couple pages on the community have awkward spacing - I picked getting the badge out the door, in case you wanted to know 🙂). I'm curious about how others handle this. Do you release on a set cadence, and ONLY on a set cadence? More ad-hoc? Clever tricks for releasing only exactly the changes you want to release? Cheers! - Caroline P.S. Along that note - it seems like Alteryx really has their act together in this regard. See their release notes, whichBrianOblingerjust posted about on Twitter (https😕/twitter.com/brianoblinger/status/1105127406208049157 - which links to:https😕/community.alteryx.com/t5/Getting-Started-Resources/Community-Version-History/ta-p/178541)247Views5likes6CommentsOOTB Activity feed not displaying any content
I have included Activity Feed component (OOTB) in my page. But when I rendered the page it is not showing any content inside it. I ensured that I am signed in but still unable to see any content within activity feed.rakhi_286 years agoHelper152Views1like4CommentsKeep message content after authenticating user on submit
Under Community Admin > Discussion Styles > Posts & Topics > Settings, I have the "Authenticate users: When they submit their post" turned on. However, I noticed that when I test this and try to write a post as an anonymous user, on submit I am taken to the login page, and then after logging in my content is lost. How can I keep the message content the anonymous user worked on after signing in? This seems like it would be frustrating for a user to lose their content, and I will turn off this setting if there is not a way to fix this. Thanks!Lindsey6 years agoLeader166Views0likes4CommentsChanging default tab in Ideas page
Is there a way to get New Ideas as a default tab in the Ideas page? The current default is Hot Ideas, but we have got a lot of feedback from our users that New Ideas is more relevant. I couldn't find a way to do it from our end. Can it be done though?SolvedJulieU6 years agoMentor152Views0likes2CommentsSuper basic - list of API calls
Hello all, We are new lithium customers, migrating from JX and working through our roll out of our new community on Lithium. We've seen some items that pull dynamic community data into our pages. Example: Welcome <username>! Or a customer component that pulls in a specific node name, # of posts per node, node description or Title text. We want flexibility to create these ourselves, but understand they are API calls. I am looking for a list of the things we could pull into our components. So what code do we use to pull "username" into a customer component. And what about node name, node title, node, # of posts, node # of solutions? I am sure this is a really basic question, but can anyone point me to a library of 'stuff you can pull in' that we can work with? FYInicoleguzzodeirdreyee6 years agoExpert172Views1like4CommentsAdding separator (,) in Vitality metrics for registered members.
Hey all. Is there any way to add a comma (,) in the value for the registered members which come throughthe OOB componentCommunity Metrics. According to the 18.12 Release Notesli-metric-name="completed_registrations_computed" is the parameter which is passed in the quilt so that we can get only the fully registered members in the UI. It has only been done for the OOB component and if we use the parameter with the custom component it doesn't work. I have achieved this by using jQuery easily but the requirement is that it has to be done with Freemarkeronly. So if there is any parameter or any other way through which it can be done using FreemarkerI would really appreciate if you can share here. Thanks in advance.pp_016 years agoMentor114Views0likes2CommentsHow to determine a user's role? In LiQL or Context Objects or both
Finding the documentation on <roles> to be a bit confusing. I want to know if a user is a certain role, for example, "Employee" or role.id = 23. Unsure how to make that work since the LiQL only gives constraints of granting_id ... and no documentation about what that is other than it's the id that grants the role. Confusing. https😕/community.khoros.com/t5/Developer-Documentation/bd-p/dev-doc-portal?section=commv2&collection=roles ThanksInactive User6 years ago77Views0likes1CommentLiQL: messages from last 2weeks with floating timeframe
Hi, how can we query messages with post_time within last 2 weeks? The 2 weeks should be calcutlated from the current (today) date. So it should be floating time frame currently we have only a fixed timeframe SELECT * FROM messages post_time > 2019-01-01T00:00:00.000+02:00 Thank you, best clemenswSolvedclemensw6 years agoGuide87Views0likes1CommentTop Solution Leaderboard API code help?
Hi, all - I'm an amateur in this space, so appreciate the guidance. I have a pipe dream of surfacing our a leaderboard for internal staff who participate in different categories throughout the community. I'd hope this leaderboard would show in a separate category for staff. [Note - all categories are under the same top level category] I've been using the top kudoed authors API for inspiration but am striking out. Any sages out there willing to help me troubleshoot? Thanks! <table> <#assign query = "SELECT author FROM messages WHERE is_solution = true ORDER BY is_solution(weight) DESC LIMIT 9"> <#assign authors = rest("2.0","/search?q=" + query?url).data.items![] /> <#list authors as author> <tr> <td style="padding: 10px"> <img src="${author.avatar.profile}" class="lia-user-avatar-message"> </td> <td style="padding-right: 10px"><a href="${author.view_href}"> ${author.login}</a></td> </tr> </#list> </table>katiepbussey6 years agoExpert369Views0likes5CommentsThe page size of threads is confusing
Hello, It's written that the maximum results per page for threads is 100, but it's also written in the "query arguments" section that the maximum is 1000. I'm confused which one is true? https😕/lithosphere.lithium.com/t5/Developer-Documentation/bd-p/dev-doc-portal?section=commv1&leaf-id=Board.threads#Board.threads Thanks, NIckSolvedNick36 years agoHelper220Views0likes5CommentsRegistration promotions/ newsletter subscription checkbox
Wanted to know where does the checkbox within the "Registration" Page that states that you want to receive newsletters via email leads. Can't find it's function in Studio Panel. I would like to integrate this in mailchimp if possible. Any thoughts?kmbarsana6 years agoContributor133Views1like2CommentsAPI v2 call to return topic/Article views
It seems it is not possible to return the total views for the specific article/topic. We have staff on our community site that has MBO's tied to the number of views they generate on the articles/post they make. I'm trying to use REST (v2) calls to get the data but there is no call to returnviews on messages posted by certain authors. Am I missing something? if so, please share theLiQL statement with me. ThanksSolvedKallie6 years agoGuide119Views0likes1CommentWhat is the difference in bookmark or subscribe options between main message and topic
Just a tricky question here, can someone tell what is the major difference in these two options of posts. I know first one is for thread and another one is for particular post. But, what make the difference for them to make subscribe to post again from particular message and not from thread.117Views0likes4CommentsAny limitation for api results
Hi, When i use the recent solution API and i'm seeing the API returns very minimal amount of results. For example, the API /solutions/recent returns 25 records by default and when we add the some filter criteria(?date_start=2018-10-18&date_end=2019-02-19&page_size=1000) and it returns only 100 records and not more than that. So i'm just checking with you all, any other configuration is available in studio? and how to get the exact results using the API.jaikumar16 years agoMentor185Views1like4CommentsUser login name is case sensitive or not.
In community , we have two users whose user login name are same , slight difference is , first letter of one user is capital and for second user is small e.g. user one : Abc and user two abc I am using "/users/login/user_login/ranking" this call where i am passing user login name . It gives me different ranking for same user name .ADS_PSI6 years agoMentor64Views0likes2CommentsREST API calls that edit Profile information?
Hey Lithosphere! It's been a while ;) I'm looking into running a community event over on the PlayStation forums which would see a zombie virus spreading through the community. The idea being that if a user makes a post in a certain thread or board - or even clicks a big, shiny, red button - they would become infected by this virus. The user would then be able to identify that they have been infected and the community team would be able to pull out a list of infected users and contact them about their "infection" (quiet in the back!). What I'm looking for then is a REST API call that would enable us to write a specific phrase to the user's Profile Bio, which can be searched for in the User Search option of the forum. Or better, some other way of automatically writing information to the user's profile which we can then use to identify the "infected" users in a search or report. Any ideas? MBMusterBuster6 years agoMentor1.2KViews1like3CommentsBlogs - changing the post date
Hi all, maybe someon of you can help me with this: We just start to migrate some old blogs into Lithium by copy & paste. The problem is, that now all post will have a new date, instead of the original date that they were posted in the old blog. Since you can't change a post date in Lithium in the frontend I wonder if anyone of you got a workarround for this. Since I am no expert, maybe there is a way working with REST to achiev this? I appreciate any help on this. Regards, MartinMadmortem6 years agoExpert407Views0likes7CommentsTranslate Freemarker to LiQL query?
Hello all, First time poster, new to Lithium, this is probably pretty basic, please be gentle. I did some searching but couldn't find anything directly addressing this question. Is it possible to convert this Freemarker to a LiQL query to seethe specifieddata? ${(page.context.user.get("profile.agent_id"))!""}Solvedethanede6 years agoHelper239Views0likes6CommentsBug report - LiQL JSON response
In the API Browser (STUDIO) I entered SELECT * FROM custom_tags WHERE messages.id = '2867' This returned a JSON response: { "status" : "success", "message" : "", "http_code" : 200, "data" : { "type" : "custom_tags", "list_item_type" : "custom_tag", "size" : 1, "items" : [ { "type" : "custom_tag", "id" : "1046", "href" : "/custom_tags/1046", "text" : "Certified", "messages" : { "query" : "SELECT * FROM messages WHERE custom_tag.id = '1046'" } } ] }, "metadata" : { } } I copied the messages.query SELECT statement offered by this response and pasted it into the API Browser box: SELECT * FROM messages WHERE custom_tag.id = '1046' This returned an error with this message: { "status" : "error", "message" : "invalid query syntax for SELECT * FROM messages WHERE custom_tag.id = '1046'", "data" : { "type" : "error_data", "code" : 604, "developer_message" : "Field 'custom_tag' is not a valid constraint for the object 'messages' (there is no field named 'custom_tag'). in: SELECT * FROM messages WHERE custom_tag.id = '1046'", "more_info" : "" }, "metadata" : { } } Since "there is no field named 'custom_tag'..." I tried it with 'custom_tags' ('s' on the end) and received this error message: { "status" : "error", "message" : "invalid query syntax for SELECT * FROM messages WHERE custom_tags.id = '1046'", "data" : { "type" : "error_data", "code" : 604, "developer_message" : "'custom_tags.id' is not a valid constraint for the object 'messages'. in: SELECT * FROM messages WHERE custom_tags.id = '1046'", "more_info" : "" }, "metadata" : { } } So, custom_tags (with an 's') is a field in the messages collection -- you should fix the typo in the messages.query field But you cannot use the SELECT statement! The offer of a messages.query statement should not be made if the statement won't work! For your consideration ... Paul (Hobart, Tasmania)SolvedPAULEM6 years agoAdvisor163Views0likes3Commentsis_draft does not appear to be working in APIv2
Hi all, I have been churning on this for a wee while now and cant seem to figure out what is wrong. I posting the follow JSON in an APIv2 Create call but the is_draft seems to be getting ignored as the posts gets posted. Can you see something I am doing wrong here? { "data": { "type": "message", "subject": "My Blog Article", "body": "<html>\n <body>\n <p>Some random text that I am using for demoing my JSON</p>\n </body>\n</html>", "board": { "id": "MyBlog" }, "teaser": "Also some random teaser text", "is_draft": true, "author": { "id": "75284" } } } Some values have been changed to protect the content i.e - Subject, Body and teaser but everything else is as its passed into the API Call.61Views0likes1CommentUnsolvable error trying to get tags for a message
I am trying to build a JSON-LD block for our message page and cannot - no matter what I try - get the tags associated with the parent message. It's driving me nuts! Here's my code: <#assign msg_id = env.context.message.uniqueId /> <#assign messageQuery = "SELECT * FROM messages WHERE id='" + msg_id + "'" /> <#assign var_msg = rest("2.0","/search?q=" + messageQuery?url) /> <#list var_msg.data.items as message> <#assign href = message.view_href /> <#assign subj = message.subject /> <#assign auth = message.author.login /> <#assign post = message.post_time?datetime?string /> <#assign view = message.metrics.views?string /> <#assign cmnt = message.conversation.messages_count?string /> </#list> <#assign usertagQuery = "SELECT * FROM tags WHERE messages.id='" + msg_id + "'" /> <#assign var_usertags = restadmin("2.0","/search?q=" + usertagQuery?url) /> <#if var_usertags.data.items?has_content> <#list var_usertags.data.items as msgtag> <#assign utag = msgtag.text?string /> </#list> <#else> <#assign utag = "NONE" /> </#if> I want it to plug into the JSON-LD code as the keywords for the message (as defined by the user): <script type="application/ld+json"> { "@context": "http://schema.org", "@type": "DiscussionForumPosting", "@id": "${href}", "headline": "${subj}", "author": { "@type": "Person", "name": "${auth}" }, "dateCreated": "${post}", "keywords": "${utag}", "award": "${ctag} answer" } </script> All the values above ${utag} fill in correctly - but it ALWAYS falls over here: { "@context": "http://schema.org", "@type": "DiscussionForumPosting", "@id": "/t5/TestBoard/Camino-Brooke/gpm-p/1681#M11", "headline": "Camino Brooke", "author": { "@type": "Person", "name": "admin" }, "dateCreated": "Jan 30, 2019 4:22:26 PM", "keywords": "<!-- FREEMARKER ERROR MESSAGE STARTS HERE --><!-- ]]> --><script language=javascript>//"> I've given up trying to get all the tags - I'll just settle for one at this stage. (The message I'm testing with has three tags and returns them just fine in the Staging API Browser using: SELECT * FROM tags WHERE messages.id='1681' If anyone has a clue as to why this is the case, I'd love to here from you. I would really appreciate the help. Thanks, PaulSolvedPAULEM6 years agoAdvisor266Views0likes4CommentsOnline users count
Hi, How I can get sum of users and guest that are currently online? I see those data in Users Online (separately for registered users and anonymous guests) component but when I do API request /users/online/count I get different result then sum of registered users online and anonmous guests online form Users Online Component. For example, in Users Online shows: Online: 4 users, 153 guests and from api call I get: 175 How can I get total number of online registered users and anonymous guest?SamuelS16 years agoContributor148Views0likes2Comments