I am having issues setting up External Authentication to Tempo. When going through the Oauth workflow, I always end with this message.
‘Failed to Authenticate’
However… if I take the code that is returned on this screen (grabbing it from the developers tools network tab) and plug it into Postman, I am able to successfully obtain a token and make requests to the Tempo API.
So I’m confused as to why this is working in Postman but not in my Forge app. Here is the code in my manifest.yml file.
modules:
jira:dashboardGadget:
- key: dashboard-with-tempo
title: dashboard-with-tempo
description: Getting Tempo Data to show up on the dashboard.
thumbnail: https://developer.atlassian.com/platform/forge/images/icons/issue-panel-icon.svg
function: main
edit:
function: edit
function:
- key: main
handler: index.runView
providers:
auth:
- tempotime
- key: edit
handler: index.runEdit
- key: tempo-profile
handler: auth.retriever
app:
id: {id}
providers:
auth:
- key: tempotime
name: Tempo
type: oauth2
clientId: {client_id}
remotes:
- tempo-apis
bearerMethod:
type: form-encoded
parameter: code
actions:
authorization:
remote: tempo-account
path: /plugins/servlet/ac/io.tempo.jira/oauth-authorize/
exchange:
remote: tempo-oauth
path: /oauth/token/
revokeToken:
remote: tempo-oauth
path: /oauth/revoke_token/
retrieveProfile:
remote: tempo-apis
path: /4/work-attributes/
function: tempo-profile
remotes:
- key: tempo-account
baseUrl: https://{my_dev_site}.atlassian.net
- key: tempo-oauth
baseUrl: https://api.tempo.io
- key: tempo-apis
baseUrl: https://api.tempo.io
permissions:
external:
fetch:
backend:
- https://api.tempo.io
- https://{my_dev_site}.atlassian.net
scopes: []
Any help here would be appreciated.