Getting 403 response when creating message with attachment using API v2 and Python
When creating messages using the Community API v2 and the Python requests library, it works fine when not trying to upload an attachment, as shown in the sanitized excerpt below. >>> headers = { 'li-api-session-key': 'XXX-XXXXXXXXXXXXXXX_XXXXXXXXXX-XXXXXXXXXXXXX', 'Content-Type': 'application/json' } >>> payload = { 'data': { 'type': 'message', 'board': { 'id': 'product-knowledge-base' }, 'body': 'This is an <b>API TEST</b> done in Python <i>without</i> an attached file.', 'subject': 'API Test without Attachment' } } >>> uri = 'https://khoros-stage.example.com/api/2.0/messages' >>> response = requests.post(uri, data=json.dumps(payload, default=str), headers=headers) >>> response { 'status': 'success', 'message': '', 'http_code': 200, 'data': { 'type': 'message', 'id': '112', 'href': '/messages/112', # ---SNIP--- } } However, when I try to create a message with an attachment(per the documentation) I am getting anHTTP Status 403 response sayingAccess to the specified resource has been forbidden, as shown below. >>> headers = { 'li-api-session-key': 'XXX-XXXXXXXXXXXXXXX_XXXXXXXXXX-XXXXXXXXXXXXX', 'Content-Type': 'multipart/form-data' } >>> message_json = { "data": { "type": "message", "board": { "id": "product-knowledge-base" }, "body": "This is an <b>API TEST</b> done in Python with an attached file.", "subject": "API Test with Attachment", "attachments": { "list_item_type": "attachment", "items": [ { "type": "attachment", "field": "attachment1", "filename": "feedparser.pdf" } ] } } } >>> payload = { 'api.request': (None, json.dumps(message_json, default=str)), 'attachment1': ('feedparser.pdf', open('C:\\Users\\someuser\\Downloads\\feedparser.pdf', 'rb')) } >>> uri = 'https://khoros-stage.example.com/api/2.0/messages' >>> response = requests.post(uri, files=payload, headers=headers) >>> response <Response [403]> >>> response.text '<html><head><title>Error report</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>HTTP Status 403 - </h1><HR size="1" noshade="noshade"><p><b>type</b> Status report</p><p><b>message</b> <u></u></p><p><b>description</b> <u>Access to the specified resource has been forbidden.</u></p></body></html>' I've confirmed that the maximum file size for attachments in our stage environment is5242880 bytes (5MB) and the attachment is only about 375kb. I'm also performing the API call with a full admin user. Does anyone have any idea what I could be doing wrong or why I would be getting that error? Thanks!!Solved369Views0likes9CommentsTableau Web Data connector using Bulk Data API
Can Bulk Data API be used in creating Tableau Web data connector. I am trying to authenticate URL and getting Bulk Data . But I am getting csv file as attachment . Instead i would like to use JSON and read data inline Can anyone help hereRing_Test5 years agoContributor94Views0likes1CommentGet community_id, client-id and token
Hi Team, As per below link, we needcommunity_id, client-id and token to access Khoros Bulk API. Please provide the url for the page to access these datails. https://developer.khoros.com/khoroscommunitydevdocs/reference/lithium-bulk-data-apisatheesmohan5 years agoContributor106Views0likes1CommentIs there a way in Admin or programmatically to force only specific forums to be threaded view?
Threaded view or linear view can either be changed per user in their settings, or changed across the entire community in Admin, despite user settings. Is there a way to force specific boards to be threaded view only, while other boards will depend on user settings? Is this either something that can be done in Admin, or done programmatically, for example can I pass in any sort of parameter into a component like "reply-list" that would force it to be threaded layout if the core node was on the list of desired boards? Thanks!SolvedLindsey5 years agoLeader157Views1like3CommentsBlog Listing Component enter label to filter by
Does any such component exist where you can filter by labels and show just the blog articles that have that label. Trying to create a page listing articles from a label and also show some custom components in the sidebar. CarolineSTreyWaddelldo you guys have any insight on this, you guys helped in the past with a similar questions?browneandrae5 years agoExpert74Views0likes2CommentsDevelopment Server
Hi All, Currently I am using studio for development and the number of versions keeps increasing for each save, which becomes very hard to keep track when working. Does lithium support a development server which we can run locally, develop and test changes then commit only the specific changes to stage server? Thanks and Regards, Ragu.V120Views0likes3CommentsResults are different in V1 and V2 when retrieving solved messages for a given subject
Hi, we are transitioning from V1 to V2 for consuming messages based on a given query. we are seeing different results in V2 from that of V1. Can you please explain why? use case: retrieving solved messages that match subject:"payment issues" V1: https://www.paypal-community.com/ppl/restapi/vc/categories/id/en/search/messages?q=subject:payment%20issues&page_size=10&restapi.response_style=view&restapi.response_format=json&solved=true V2: http://www.paypal-community.com/ppl/api/2.0/search?q=SELECT%20id,subject%20FROM%20messages%20WHERE%20category.id%20=%20%27EN%27%20AND%20subject%20MATCHES%20%27%5C%22Payment%20issues%5C%22%27%20AND%20depth=0%20AND%20conversation.solved=true%20LIMIT%2010 I appreciate response on this. thanks Sushmasubanda5 years agoAdept87Views0likes1CommentRead and write custom field
We have added custom fields on application level and message level by contacting Lithium support team. I don't able to find a way to access it using and API. Is there any specific API call to get custom fields and Is it possible to set application-level custom setting using setting editor?Solved412Views0likes5Commentscustom featured post component
Hi All, I'm trying to find an api call to return the first message from a featured thread. I've been trying to work with this https://devdocportal.lithium.com/t5/Community-API-v1-Reference/bd-p/restv1docs?section=commv1&leaf-id=Board.threads#Board.threads.featured <#assign featured = rest("categories/id/lived-experience-forum/threads/featured/?page_size=3").messages /> I'm not getting any errors, but I'm also not seeing anything. Does anyone have any tips?85Views0likes1Commentupdating FAQ via SDK
Hi, We are using SDK to push checkin the code. We are unable to locate the FAQ section (Studio -> Text Editor -> FAQ Text) in the plugin directory. Does anyone has idea if this section is part of plugin directory or not ? Thanks, Sachinskatiyar5 years agoExpert83Views0likes2CommentsClosing H1 Tag Escaped on Khoros Platform?
In the source code for all of our pages is a line that is supposed to expose an H1 tag, but our SEO team states that their tools do not detect an H1 on the pages. I have reproduced a sample fragment from the source that propagates to our pages below. "layout.module_welcome" : "<style>\r\n.announcement-text {margin:10px 0 0 18px;}\r\n<\/style>\r\n<div class=\"announcement-text\"><H1><font color=\"#000000\">[community name]<\/font><\/H1>\r\n<P><font size=\"+1\">[community description]<\/font><\/P>\r\n<\/div>", Note the backslash in the closing H1 tag (" <\/H1>"). In my experience, a backslash in anything other than MS-DOS is an escape character, telling the interpreter to ignore what follows. Does this mean that there is an unclosed H1 string? Would this explain why the tools don't detect an H1? Pardon my ignorance. 😉103Views0likes2CommentsPermissions do not appear to be working properly
currently we have the ability to subscribe to labels enabled for all users . However some roles are not seeing the subscribe button even it's enabled. Is there another setting that we are missing. https://tinyurl.com/y8wd7dmu https://tinyurl.com/y8lq2sau deirdreyeebrowneandrae5 years agoExpert146Views0likes4CommentsFailing to send PM v3 via API v2 notes_threads collection
I am building an endpoint that should send a private message from the current admin user to a given user. I am using the restbuilderto build my CREATE call to the notes_threads collection like this: <#assign PMPostCall = restBuilder() .method("POST") .path("/notes_threads") .body({ "type": "notes_thread", "subject" : "Important note", "new_note" : { "type" : "threaded_note", "body" : "We have just approved your application. Welcome and now please take a look around." }, "thread_recipients" : { "list_item_type":"note_recipient", "items": [ { "type" : "note_recipient", "user": { "type": "user", "login": "ClaudiusTest" } } ] } }) .admin(true) /> <#assign resp = PMPostCall.call() /> Looking at${resp.message} I only get a not very helpful "New note couldn't be sent due to error null". Can you spot anything wrong with my code? (The user "ClaudiusTest" does exist) Anyone can share some code for sending PM v3 that works?Solved93Views0likes1CommentSubject MATCHES returns irrelevant messages
I have a board where all the messages have subjects that are just dates like 2019-06-12. I used to find the relevant messages by querying subject MATCHES '<date>'. Now,however, I'm getting results where the subject will be a completely different date from the query. Any suggestions?Solved375Views1like12Commentslia-scripts-head-min.js Files
We conducting an audit of the JS files on our Community instance. I am wondering what the functionality of the two files with the namelia-scripts-head-min.jsthat are loaded onto our instance. Is there any documentation or information about these two files? Thank tou!holdenmaud5 years agoContributor86Views2likes1CommentWhat does message.type = 'message' mean in Bulk Data export?
In the developer documentation, there is no reference to what message.type=message means from a Bulk Data API export, however this message type is returned to me. What does this message type mean?Lindsey5 years agoLeader72Views0likes1CommentCommunity Session timeout
I understand that the auto session time out for community is configurable. I have to run a task(JS) when the user logs out/session times out. I have it working when user manually logs out using sign out option. How do I implement the same before the user session times out, is there a way I can trigger this task based on the session timeout? Thanks in advance for any suggestions. Ragu.V81Views0likes0CommentsCan Bot registered using Bot API v2 can make use of Bot API v3 methods?
Hello All, We are using BOT API v2 and we are facing some problems wherein the handoff request is not successful and the agent picks up the message while monitoring, the problem is Bot does not know the message is picked by agent and it interferes with the interaction of the user and the agent. I am thinking of some way to know if the agent is taken control of the conversation so that we can stop bot responding to it. I see a method in Boat API v3 (https://developer.khoros.com/khoroscaredevdocs/reference#controlnetworknetworkkeyexternalidexternalidauthorauthorid-get) which returnswhich entity (agent or bot) has current control of the conversation associated with the specified author on the specified network. Wondering if only this API can be implemented or whole registeration , handoff process etc will change, as there is vast difference in the V2 and V3 api. Any guidance on this will be highly appreciated. BOT API V2: https://developer.khoros.com/khoroscaredevdocs/reference#reference-bot-api2deepakdotmishra5 years agoContributor51Views0likes0CommentsBulk registering users with the API and a CSV file?
I'm familiar with uploading a CSV file to bulk register users with SSO as per this article, but I was wondering if it's possible to use the API to do this? As in could we send an email with a CSV attached for example to upload it, or some kind of automated process?SolvedSheenaK5 years agoDirector151Views0likes2CommentsBulk Data API limit response for field equal to a value
Is there a way to do a Bulk Data request in which you limit a specific field to be equal to a specific value? For example, if I wanted to find the user logins of users that completed their registration on the community, I would like to do something like this: curl "https://api.lithium.com/lsi-data/v1/data/export/community/?fromDate=YYYYMMDDhhmm&toDate=YYYYMMDDhhmm&fields='action.key=users.registration','target_user_registration_status=FULLY_REGISTERED',user.login" -H "client-id: " -u ":" where I only am returned data that has action.key=users.registration and target_user_registration_status=FULLY_REGISTERED.Lindsey5 years agoLeader59Views0likes0CommentsCategory Page URL parameters
Hi, I understand we have default URL for category page when a category is created. My requirement is I needed to load a specific category page with some default parameters when the category link is selected. Category page Url :https://community.domain/t5/categoryName/ct-p/category_id Required URL :https://community.domain/t5/categoryName/ct-p/category_id?q1="val1"&q2="val2" Can we achieve this URL on a category page by default. Any suggestions?Solved156Views0likes2CommentsAPI: Copying Permissions to another Node or Role (node A -> node B, role X -> role Y)
Hi, I want to programmatically copy node A's Defaultspermissions to node B, andcopy/clone Role X configuration to Role Y (where the roles are on different nodes). Are there REST APIs to get/set a community or node's "Defaults" permissions' values (e.g. See categories: Default|Deny|Grant|Allow Grant)? Are there REST APIs to get/set a Roles' permissions' values (e.g. Read posts: Default|Deny|Grant|Allow Grant) at the community-level or specific node-level? Are there REST APIs to list the Permissions keys configurable at the community-level or specific node-level? Thank you, Benbma5 years agoMentor101Views1like1CommentPlugin upload failed
Hi! I have a problem submitting a new plugin to stage. This used to work just fine (it did upload the plugin even when it said it was failed) but now any new version does not appear in studio / stage. Here I tried usingli submit-plugin --force, but it gave me the same error. Are there any logs I can view anywhere to solve this error? [07:05:54] Loaded gulp tasks in: 1.17 min [07:05:54] Using gulpfile /usr/src/app/gulpfile.js [07:05:54] Starting 'plugin-build'... [07:05:54] Starting 'clean-tmp'... [07:05:55] Starting 'clean-plugin'... [07:05:55] Starting 'clean-plugin-zip'... [07:05:55] Finished 'clean-tmp' after 1.22 s [07:05:55] Finished 'clean-plugin-zip' after 71 ms [07:05:58] Finished 'clean-plugin' after 2.97 s [07:05:58] Starting 'clean'... [07:05:58] Finished 'clean' after 56 μs [07:05:58] Starting 'plugin-build-res'... [07:05:58] Starting 'plugin-build-web'... [07:05:58] Starting 'plugin-git-version'... [07:05:58] Finished 'plugin-git-version' after 360 μs [07:06:04] Finished 'plugin-build-res' after 5.96 s [07:06:08] Finished 'plugin-build-web' after 10 s [07:06:08] Finished 'plugin-build' after 14 s [07:06:08] Starting 'plugin-verify'... [07:06:13] Tested 770 tests, 770 passes, 0 failures: PASS [07:06:16] Tested 25 tests, 25 passes, 0 failures: PASS [07:06:18] Tested 26 tests, 26 passes, 0 failures: PASS [07:06:18] Done compiling plugin: /usr/src/app/plugin [07:06:18] Finished 'plugin-verify' after 9.8 s [07:06:18] Starting 'plugin-ready'... [07:06:18] Done compiling plugin: /usr/src/app/plugin [07:06:18] Finished 'plugin-ready' after 1.06 ms [07:06:18] Starting 'plugin-upload'... [07:06:18] Finished 'plugin-upload' after 60 ms forced! [07:06:19] Uploading plugin [07:06:35] Plugin upload failedpepitaK5 years agoAdept125Views0likes3CommentsUnable to use the 'email' field in a WHERE clause when using LiQL against the users table
I am trying to figure out how I can retrieve the User ID or login (i.e. username) for a user when I only have their email address using LiQL, but for some reason I am getting an "Invalid query syntax" error in all of my attempts. Below is the JSON returned when querying using Python. {'status': 'error', 'message': 'Invalid query syntax', 'data': {'type': 'error_data', 'code': 604, 'developer_message': "'email' is not a valid constraint for the object 'users'. in: SELECT login FROM users WHERE email = 'admin@lithium.com'", 'more_info': ''}, 'metadata': {}} Below is a screenshot from the API Browser in Studio. Does anyone have any idea what I'm doing wrong? I've tried all sorts of adjustments and email addresses (even using LIKE, MATCHES, etc.) but no dice. Thanks! JeffSolved201Views0likes4CommentsGet cover image using API V1?
Is there a way to select the cover image using API v1? There's the images array, and I can obviously select the [0] image -- if the cover image is the first one. What if it's not? https://devdocportal.lithium.com/t5/Community-API-v1-Reference/bd-p/restv1docs?section=commv1&leaf-id=Message.images#Message.imagesSolvedInactive User5 years ago190Views0likes5CommentsIs there a LiQL to retrieve all posts and content under a category
I have a category called "Getting Started / How It Works" and I would like to retrieve all of the messages and their content from the two boards that are underneath it. Based on some other posts that I saw, I tried this... select subject,body from messages where category.id = 'Getting Started / How It Works' But it only yielded me a JSON response of: { "status" : "success", "message" : "", "http_code" : 200, "data" : { "type" : "messages", "list_item_type" : "message", "size" : 0, "items" : [ ] }, "metadata" : { } } Does category.id need to be a number? If so, where would I find it. I can't find a number in View Source if there is one.Solved137Views0likes2CommentsHelp updating discussion style icons
Hi ya'll, I posted earlier about updating the Contest icon (Update discussion style icon?). I did find the documentation (https://developer.khoros.com/khoroscommunitydevdocs/docs/developer-guide?_ga=2.104465603.216954800.1585547475-1088082075.1564597589#section-font-awesome-icons-custom-image-assets-and-sv-gs) - but wow, it's beyond me. Unfortunately we don't have a real developer to help with this, so I am trying to cobble it together. Any guidance on exactly what to do to update the contest icon (on the contest home page, on the contest entries page, and in lists.... and anywhere else i'm forgetting) would be much appreciated. We have a nice SVG to work with. THANK YOU.Solved198Views0likes6CommentsPost Message ( TKB ) with costume tags
Hi Team , I'm new to Khoros & we are planning to migrate from JX to Khoros community I'm looking for optionPOST Message ( TKB ) with costume Tags using API v1 or V2 ? Any suggestions Thanks & Regards Sachin PatilSolvedpatils275 years agoGuide71Views0likes1CommentSearch is fully restored on the Dev Doc Portal
30 March 2020 9:00 AM (PDT): Customers have reported that Search on developer.khoros.com is not returning search results. We are investigating the issue. 31 March 2020 7:08 AM (PDT): We believe we found the source of the issue. A fix is in process. 1 April 2020 1:57 PM (PDT): A fix is set to be pushed later today. 2 April 2020 11:03 AM (PDT): There has been a delay on the fix. We will keep you posted. 2 April 2020 1:58 PM (PDT): Global search is working on the developer.khoros.com landing page, but not within the Care and Communities section pages. You will be able to search for and access content from the main landing page. 6 April 2020 4:00 PM (PDT: Search is fully restored on developer.khoros.comSuzieH5 years agoKhoros Alumni (Retired)61Views0likes0CommentsMessages order (WhatsApp)
Hi there, As you remember, we are working on our chatbot that is connected to user channels. Some of messages have a bit of a complex structure, and we need to split them up in order to send them in proper order. Consider, we have a single message that has the following content structure: <text><image><text>. In order to send this message to a WhatsApp user, we need to split the content into three messages (#1 <text>; #2 <image>; #3 <text>). If we send these messages one-by-one, in WhatsApp client we might receive these messages as in the order <text><text><image>, because posting images takes longer than posting text messages. We have a workaround (adding delay between requests) but images could be big in size, so it takes very long to send them. We could constantly increase delay, but it's not a good way to do such things. So, my question is the following: Is it possible to make a request to check the message status, whether it has been delivered to WhatsApp servers or not? Actually, it doesn not matter, whether the message were delivered to the end user, because users might be offline. We just need to know if the messages have been delivered to the WhatApp server in the proper order. #markebot75 years agoMentor68Views0likes0Comments- subrat5 years agoContributor60Views0likes1Comment
Why are the discussion styles all so different?
I'm not really expecting an answer, but I just need to vent a little... We are new to Lithium, having just migrated a 250k+ user community from Jive to Lithium. One thing that I have found very frustrating when styling the community is that each "discussion style" looks like it was implemented in total isolation, with very little consistency with respect to page elements and HTML structure. Sometimes the author details are above the title, sometimes below. Sometimes the author details aren't present at all. Sometimes you can reply or give kudos to a comment, sometimes you can't. Even the rendering of things like attachments, tags, and labels following the message/article body might render in different order, or different styles, or with different HTML elements. This makes styling a community so time-consuming. What gives? Is there a reason for this? I can certainly imagine that this makes professional services contracts more lucrative, butI think a little TLC and coordination between Dev and UI/UX would be much appreciated by customers doing skinning in-house. As a dev, I would say this violates DRY principle (don't repeat yourself). As a UI/UX person, I would say it violates affordance consistency. Imagine if every room in your house placed the light switch in a different place and at a different height?caseygum5 years agoGuide118Views0likes2Commentsenv.context.message.uniqueId returns null
Hi I have a script on my ForumTopicPage that captures the id of the original post. I have used this: <#assign msg_id = env.context.message.uniqueId /> <#assign msgQuery = "SELECT * FROM messages WHERE id='${msg_id}'" /> etc It works fine - or so I thought. I have found a thread with lots of replies - enough in fact to cause paging to occur - and this code doesn't work on page 2. I get the big yellow error! Here's the advice provided: InvalidReferenceException:The following has evaluated to null or missing: ==> env.context.message [in template "custom.messageMarkup" at line 14, column 23] ---- Tip: It's the step after the last dot that caused this error, not those before it. ---- Tip: If the failing expression is known to be legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related😞 - Failed at: #assign msg_id = env.context.message... [in template "custom.messageMarkup" at line 14, column 5] ---- As suggested, I tried an initial IF test: <#if env.context.message.uniqueId??> <#assign msg_id = env.context.message.uniqueId /> etc </#if> But this didn't work! I still get the same error. Does anyone know either How to get the ID of the original post when you're not on the first page of the thread, OR How to intercept the error and stop it from appearing (ie stop the code from running)? Thanks in advance Paul (Tasmania)SolvedPAULEM5 years agoAdvisor175Views0likes3CommentsCreate new blog/article page
Hi there, Is there a resource that lists the urls for each page that is available within the Lithium community? e.g Create new discussion = /t5/forums/postpage/choose-node/true/interaction-style/forum Category page =/t5/id-of-category/bg-p/id-of-category I am trying to find the link tocreate new article that would normally be displayed on the blogPage. ThanksSolvedBinnyK5 years agoContributor202Views0likes3CommentsGenerate JWT Token Server Side
Hi, I am trying to generate a signed JWT token(Shared secret key) for SSO with one of our products, using logged in community user details. Does Khoros provide any options to do this in server side (Freemarker), since Javascript/Jquery exposes code to client. Is there any possible way I can achieve this without the code being exposed to client? Thanks, Ragu.V70Views0likes0CommentsFilter users by email domain
We're working on a larger user group program built around Khoros Group Hubs. For that, we will also be employingAbout Group Hubs. Unfortunately, the process to invite members to these group hubs doesn't scale too well as you need to know which community names you search for to invite them. I am therefore looking to build a custom component to filter all community users by members that have a verified email with a certain domain. Unfortunately neither the API v2 users collection nor the API v1 email resource seems to allow filtering for email domains. Does anyone know how to filter users by email domain?72Views2likes0CommentsThe Developer Documentation is back up
We are working with the hosting site to determine and solve the issue. Thank you for your patience. Update: 25 March 9:19 AM We are still working on this issue and have been able to eliminate some root causes. We will continue to keep you updated. Update 25 March 4:17 PM We've pushed a fix to our Dev Doc Portal. You should be able to access it again without issue.SuzieH5 years agoKhoros Alumni (Retired)62Views0likes0CommentsURL for My Profile without user.id
Hi, Is there a URL that I can use outside of lithium that will take the user to their profile? I currently cannot get access to the user.id offsite so I need a generic link to take the user to their profile, without this ID. Usually it would behttps://community.domain.com/t5/user/viewprofilepage/user-id/{{USERID}} Thanks, Darren.SolveddarrenSP5 years agoMentor317Views0likes8CommentsLogin Page popup
Hello, I understand Khoros provides two login pages, one is a standard login page https://companyDomain/t5/user/userloginpage and other is a pop up page when we click on the sign in option on home page How do I invoke the pop up login page in one of my custom components? I assume the redirect URL parameter is still included. Any solutions here would help. Thanks, Ragu.V88Views0likes1Commentwhat are the steps i need to follow to access API via OAuth 2.0 in Khoros
Hi, We need to access some API resources from Khoros Community. We have the login credentials. Our community doesn't uses SSO. As per my understanding we need to get first the client id and Client secret. Thensign in to your Community app once in order to get an authorization code enabling them to get an OAuth access token. This Web UI authentication can happen using a Community-hosted sign-in page. -> Then community will open a Sign In page for the user to enter their login and password. Upon successful Community Web UI authentication, the user is redirected to the URL in the ‘redirect URI’ configured when you created the API. -> My doubt is here. How do we configure or get the above mentioned redirect URI?. This URI we need to mention in our client implementation right? Please let me know the detailssubrat5 years agoContributor67Views0likes0Comments