Ideas
10910ideas
Created on 06 Mar
UserImage.jpg
JIHEE KIM
 Problem Statement In ODC, a Client Secret is required in virtually every scenario where an app communicates with external systems or calls ODC Management APIs programmatically: UsersManagement (Forge) → ODC User & Access Management API External IdP integration (OIDC) → Azure AD, Okta, etc. ODC REST API calls → Portfolio API, and others External service integrations → Salesforce, MS Graph, etc. The current behavior is that Client Secrets expire every 90 days by default (maximum 2 years), and renewal is only possible manually through the ODC Portal. Root Cause of the Issue This is not merely an inconvenience — it is a structural constraint that breaks the promise of full automation in ODC-based services. Here is why: ① No programmatic renewal path exists There is currently no Management API endpoint to rotate or renew a Client Secret. This means that no matter how well-automated your app logic is (e.g., a Timer-based user management flow), the secret renewal step always requires direct developer intervention. ② Expiry creates operational risk at scale In production SaaS or B2C environments running on ODC, a missed secret expiry means: All features depending on that secret stop working silently or with cryptic errors End-users are impacted before the team is even aware Recovery requires Portal access by a developer with the right permissions — not something an end-user Admin can resolve ③ The expiry cycle creates recurring developer toil Even with the maximum 2-year expiry configured, and even with calendar reminders or monitoring in place, this is manual, recurring, high-risk maintenance. It runs counter to the Low-Code philosophy of ODC: reducing developer toil and enabling reliable, autonomous operation. Requested Feature(s) Please implement one or more of the following: Option A — Programmatic Secret Renewal via Management API Add a Management API endpoint that allows an authorized app to rotate or renew a Client Secret before expiry. This would enable a Timer-based auto-renewal flow entirely within ODC, with zero developer intervention. POST /api/v1/clients/{clientId}/secrets/rotate→ Returns: new_secret, valid_from, expires_at Option B — No-Expiry Secret Option Allow trusted, internal service accounts to opt into a non-expiring Client Secret, similar to how other platforms (e.g., Azure App Registrations, AWS IAM long-term credentials) provide this option with explicit acknowledgment of the security trade-off. Option C — Secret Rotation with Overlap Window Support a dual-secret validity window during rotation — where both the old and new secrets remain valid for a configurable overlap period (e.g., 24–72 hours). This enables zero-downtime secret rotation in production environments.
70
Views
0
Comments
New
Other
Created on 06 Mar
2019-10-25 19-52-02
Leandro Oliveira
On ODC Studio when you create a new agent, there is a configuration named Call Condition. By its description and behavior it should be called Stop Condition to avoid confusion: It is already there when you open the question mark icon:
110
Views
0
Comments
New
Service Studio
Created on 06 Aug 2025
2024-05-02 09-49-04
Murali Manoharan V
Just like the option to export/download certificates, it would be great to have the same functionality available in the Achievements section as well. The exported file will give information about all the achievements under the achievements section.
313
Views
4
Comments
New
Community
Created on 10 Sep 2020
2025-05-02 13-04-41
João Gonçalves
Add the possiblity to configure the Expose Read Only property when importing an external table via integration studio. This comes in handy when importing reference data tables from another system where you don't want the ability to write to the table, preventing create, update or deletes by not having those CRUD operations inside the extension module.This would mitigate data accidents by devs and truly feel like a static entity but only external.
806
Views
6
Comments
New
Database
Created on 30 Apr 2021
2022-02-17 14-08-46
Rafael Valente
It would be awesome if there was the possibility of Uploading & Publishing multiple modules at once through Service Center.
816
Views
10
Comments
New
Service Center
Created on 21 Sep 2018
2018-12-11 13-32-05
Martijn Habraken
Sometimes you don't want to share your solution with the whole community but only with your co-workers. It would be great if we could have restricted Forge's on each account.Large customers with multiple infrastructures could use this company/private Forge to share reusable applications between their teams.
1301
Views
8
Comments
New
Forge
Created on 31 Mar 2015
2019-11-12 17-31-26
Justin James
It would be nice to reorder the filters, etc. in the Aggregates view for organization purposes. Small but nice feature from simple queries.J.Ja
4276
Views
29
Comments
Implemented
Aggregates & Queries
Development Environment 11.0.109.0
Created on 30 Apr 2025
2022-08-26 05-45-19
Jeremy Kuang
It does not take up any backend processing power, neither does it take up any storage space in the servers. It's all frontend. Why the cost of AO for using Local Storage?
185
Views
3
Comments
New
Licensing
Created on 20 Feb 2013
2018-11-09 09-14-06
Gonçalo Almeida
The platform lack 3 commonly used math functions: - ceiling(decimal) - floor(decimal) - random(n, m): generates a number between n and m It would be usefull to have them built-in.
4717
Views
31
Comments
New
Builtin & User functions
Created on 05 May 2020
2019-10-27 01-32-56
Caio Santana Magalhães
Not too long ago, we got For Each nodes to display the name of the Record List as its default label . Could we get something similar for Assign nodes with multiple assignments? Current behaviorWhen creating an Assign node with only one assignment, its default label becomes the name of the assignment.After adding 2 or more assignments, the default label changes to a generic "Assign" name. Proposed behaviorThe default name of the Assign node would be the conjunction of all common leftmost names of its assignments.If a common name cannot be resolved, then it defaults to the generic "Assign" name.Examples below: Example #1 - Common name "MyStrucutre.InnerStructure" Example #2 - Common name "MyStructure" Example #3 - No common names, defaults to generic "Assign" name RemarksThe "Assign" generic name does not add any value to the understandability of the code. Thus, any feature that attempts to display a meaningful label instead of this generic name is a valid product enhancement effort IMO.Good practices say that you should always custom-set the labels of your Assign nodes. However, as we know it, many assignments created every day by the average user are unlabeled.With the proposed behavior, developers are more likely to split big Assign nodes -- that contain assignments of different/unrelated records -- onto smaller Assign nodes (each containing values of one individual record) due to the automatic naming convention, improving code readability.
896
Views
12
Comments
On our RadarOn our Radar
Service Studio
591 to 600 of 10910 records
Top Idea Creators
High Five to the top 5 idea creators in the last 30 days
2025-12-08 23-06-08
2 ideas
Top Brainstormers
High Five to the top 5 brainstormers in the last 30 days
2021-09-06 15-09-53
6 comments
2
2024-07-05 14-16-55
2 comments
3
2025-12-08 23-06-08
2 comments
5
2023-02-09 12-36-42
1 comments
Code of Conduct 
The guidelines we live by that make
this Community amazing!
Code of Conduct
Stay Up-To-Date
Keep on top of what's happening in the Developer Community.
Forum, Forge, Training, Documentation, and more!