As a tribe admin, you can integrate third-party applications with LetsDecide. This is done via LetsDecide's incoming web hooks. Following operations  are currently supported;

  • Read details of a decision.
  • Submit a comment on a decision's conversation.


Step1: Generate a secret key for your tribe:

  • From the tribe dropdown on the app toolbar, click on the down arrow button, then click Manage my tribes.
  • Locate the tribe you want to configure, ensure that you are the admin/owner for the tribe.
  • Click Edit.
  • On the Popup, go to Integrations.
  • Look for integration type Incoming.
  • Click on the icon in the corresponding details.
  • Click on Get. This will generate a key that is specific to your tribe. Please do not share it. The key will give programs access to your tribe.
  • Click on Copy button to copy it to clipboard. We will use it in the next step.


Step2: Using the generated key in your code:

  • When calling LetsDecide's incoming hooks, it is mandatory that there is the following request header;
    • Header name = Authorization
    • Header value  = LetsDecide + <SPACE> + Base64 encoded string user-email&&tribe-secret.
  • API endpoints:
    • Get decision details: GET https://ok.letsdecide.ai/hook/decision/{decision-id}
      • decision-id: is the 7 character decision id of the form D000000.
      • If the call is success, following details are returned in a JSON response.
      • summary: String
      • decisionStatus: int [Undecided=100, Deciding=101, Decided=102, Cancelled=103]
      • decisionPriority: int [Critical=100, High=101, Medium=102, Low=103]
      • decideBy: Date
      • daysRemaining: int
      • If the call fails, HTTP 500 is returned with the error status message.
    • Comment on a decision conversation: POST https://ok.letsdecide.ai/hook/comment/{decision-id}
      • decision-id: is the 7 character decision id of the form D000000.
      • POST body should a JSON payload and show have the following fields:
        • text: String
      • If the call is successful, HTTP 200 is returned
      • If the call fails, HTTP 500 is returned with the error status message.