Parameterized Authorization

Parameterized authorization allows you to change which accounts you access on the fly based on the encrypted authorization you send in your webhook. This additional flexibility allows you to centrally manage company workflows for multiple users without creating multiple workflows. 

Let’s see the steps to create a parameterized authorization for service actions with the help of an example.

Example

Let’s say you have an existing workflow that, when triggered through webhook, creates a card in Trello and sends the card details via email.

3-flow.png


Let’s create a dynamic, or parameterized account for Trello and Gmail.

Step 1: Retrieve service access token and create object

Using your account’s OAuth server, create an access token for the service (in this case, Trello) and insert it in the access_token field of the following object. This is the standard object to be used for all service actions:

  { 

     "auth" : { "access_token" : "9276fb05d973105df631d29894a8b49af8564b85951d121d0ca584a29761d89c" },     

     "actions" : [ "a0" ] 

  } 

]

Here, a0 refers to the Id of the action you want to create a parameterized account for. You can find this Id at the bottom left corner of the action configuration window as shown below:

2-add-card.png

Next, retrieve an access token for the Gmail service and add it to the object for Gmail service. Add this object below the Trello object. So it becomes,  

 [ 

    { 

       "auth" : { "access_token" : "9276fb05d973105df631d29894a8b49af8564b85951d121d0ca584a29761d89c" },     

       "actions" : [ "a0" ] 

    },

    { 

        "auth" : { "access_token" : "ya94.GltcBIa387LWmFugL3Zi9m23yslgx4xkaIzeUR6ZeHkYD0ZfcBQdLHi2A" }, 

         "actions" : [ "a1" ] 

    } 

]

Step 2: Encode object

Once you have created the object, encode it with base64 encoding. You can use this online service to encode the object.

encode-64-2.jpg

Step 3: Append encoded object to webhook URL

Once you have encoded the object, you can append it to the webhook URL of the workflow you wish to execute. Add ?authorizations= to your webhook URL, followed by your encoded object. 

For example, if https://runflow.built.io/run/8... is the webhook URL of the workflow, add ?authorizations= followed by the encoded data. Your webhook URL will look something like this: https://runflow.built.io/run/8...?authorizations=IFsgDQogICAgICAgeyANCiAgICAgICAgICJ0b2tlbiIgO…

Step 4: Execute the webhook URL

Now when you execute the above webhook URL, it will call the workflow and will replace the existing accounts with the parameterized accounts.

Creating a parameterized authorization for multiple actions of the same connector

If you are using multiple actions from the same service, you do not need to create different objects for each of them. You simply need to add their corresponding Ids in the Actions array of the existing object for that service. 

For example, in the workflow below, the object for Trello service will be,

1-flow.png

   [ 

       { 

          "auth" : { "access_token" : "9276fb05d973105df631d29894a8b49af8564b85951d121d0ca584a29761d89c"}, 

          "actions" : [ "a0","a2" ] 

       },

    ]

where a2 is the Id of the Trello - Update Card action. 

List of connectors supported in parameterized authorization

Here is the list of services along with their auth structure to be used to create the parameterized authorization. 

    1. Box
    2. Github
    3. Gmail
    4. Google_drive
    5. Google_sheet
    6. Spark
    7. Spark_admin
    8. Facebook
    9. Onedrive
    10. Onenote
    11. Asana
    12. Basecamp
    13. Bitly
    14. Youtube
    15. Moxtra
    16. Smartsheet
    17. Formstack
    18. Wordpress
    19. Todoist
    20. Campaignmonitor
    21. Google_calendar
    22. Google_contact
    23. Google_tasks
    24. Google_urlshortener
    25. Pinterest
    26. Pushbullet
    27. Quip
    28. Runscope
    29. Toodledo
    30. Wrike
    31. Hubspot
    32. Redbooth
    33. Fitbit
    34. Shopify
    35. Trello
    36. Slack
    37. Evernote
    38. Microsoft_365
    39. dropbox_business
    40. Hubb
    41. Showgizmo
    42. Dropbox
    43. Dropboxv2
    44. Citrix_go_to_meeting
    45. Philips_hue
    46. Buffer
    47. Eventbrite
    48. Salesforce
    49. Salesforcev2
    50. Salesforcev3
    51. Wunderlist
    52. Mention
    53. Excel_online
    54. Uber
    55. Egnyte
    56. Heroku
    57. Linkedin
    58. Nimble
    59. Zendesk
    60. Jive
    61. Twitter
    62. Intuit (Quickbooks)
    63. Citrix_go_to_webinar

    Auth Structure

    1. Box

       { 

          "auth" : { “access_token” : "YOUR ACCESS TOKEN HERE" },

          "actions" : [ "ACTION ID HERE" ] 

        }           

    ]


    2. Github


       { 

         "auth" : { “access_token” : "YOUR ACCESS TOKEN HERE" },

         "actions" : [ "ACTION ID HERE" ] 

       }

    ]


    3. Gmail


       { 

          "auth" : { “access_token” : "YOUR ACCESS TOKEN HERE" },

          "actions" : [ "ACTION ID HERE" ] 

       }

    ]


    4. Google Drive


      { 

       "auth" : { “access_token” : "YOUR ACCESS TOKEN HERE" },

       "actions" : [ "ACTION ID HERE" ] 

      } 

    ]

    5. Google Sheets



      "auth" : { “access_token” : "YOUR ACCESS TOKEN HERE" },

      "actions" : [ "ACTION ID HERE" ] 


    ]


    6. Spark


       { 

         "auth" : { “access_token” : "YOUR ACCESS TOKEN HERE" },

         "actions" : [ "ACTION ID HERE" ] 

       } 

    ]

    7. Spark Admin


      { 

        "auth" : { “access_token” : "YOUR ACCESS TOKEN HERE" },

        "actions" : [ "ACTION ID HERE" ] 

       }

    ]


    8. Facebook


      { 

         "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


         "actions" : [ "ACTION ID HERE" ] 


      } 


    ]


    9. OneDrive



      { 


        "auth" : { “access_token” : "YOUR ACCESS TOKEN HERE" },


        "actions" : [ "ACTION ID HERE" ] 


      } 


    ]


    10. OneNote



      { 


        "auth" : { “access_token” : "YOUR ACCESS TOKEN HERE" },


        "actions" : [ "ACTION ID HERE" ] 


       } 


    ]


    11. Asana



       { 


          "auth" : { “access_token” : "YOUR ACCESS TOKEN HERE" },


           "actions" : [ "ACTION ID HERE" ] 


       } 


    ]


    12. Basecamp



      { 


         "auth" : { “access_token” : "YOUR ACCESS TOKEN HERE" },


         "actions" : [ "ACTION ID HERE" ] 


       } 


    ]


    13. Bitly



      { 


          "auth" : { “access_token” : "YOUR ACCESS TOKEN HERE" },


          "actions" : [ "ACTION ID HERE" ] 


       } 


     ]


    14. YouTube



       { 


         "auth" : { “access_token” : "YOUR ACCESS TOKEN HERE" },


         "actions" : [ "ACTION ID HERE" ] 


       } ]


    15. Moxtra



       { 


          "auth" : { “access_token” : "YOUR ACCESS TOKEN HERE" },


          "actions" : [ "ACTION ID HERE" ] 


        } 


     ]


    16.  Smartsheet




      { 


        "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


         "actions" : [ "ACTION ID HERE" ] 


      } 


    ]


    17. Formstack



       { 


           "auth" : { “access_token” : "YOUR ACCESS TOKEN HERE" },


           "actions" : [ "ACTION ID HERE" ] 


        } 


    ]


    18. Wordpress




      { 


         "auth" : { “access_token” : "YOUR ACCESS TOKEN HERE" },


         "actions" : [ "ACTION ID HERE" ] 


       } 


    ]


    19. Todoist




       { 


          "auth" : { “access_token” : "YOUR ACCESS TOKEN HERE" },


          "actions" : [ "ACTION ID HERE" ] 


        } 


    ]


    20. Campaign Monitor



       { 


            "auth" : { “access_token” : "YOUR ACCESS TOKEN HERE" },


            "actions" : [ "ACTION ID HERE" ] 


       } 


    ]


    21. Google Calendar


     [


        { 


           "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


           "actions" : [ "ACTION ID HERE" ] 


        } 


     ]


    22. Google Contacts


     [ 


       { 


          "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


          "actions" : [ "ACTION ID HERE" ] 


         } 


     ]


    23. Google Tasks


     [ 


         { 


             "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


             "actions" : [ "ACTION ID HERE" ] 


         } 


    ]


    24. Google URL Shortener



       { 


      "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


      "actions" : [ "ACTION ID HERE" ] 



    ]


    25. Pinterest




      { 


         "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


         "actions" : [ "ACTION ID HERE" ] 


       } 


    ]


    26. Pushbullet



      { 


        "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


        "actions" : [ "ACTION ID HERE" ] 


       } 


    ]


    27. Quip



      { 


        "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


        "actions" : [ "ACTION ID HERE" ] 


      } 


    ]


    28. Runscope



      { 


         "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


         "actions" : [ "ACTION ID HERE" ] 


      } 


    ]


    29. Toodledo



      { 


        "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


        "actions" : [ "ACTION ID HERE" ] 


      } 


    ]


    30. Wrike




       { 


          "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


          "actions" : [ "ACTION ID HERE" ] 


       } 


    ]


    31. HubSpot




      { 


        "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


        "actions" : [ "ACTION ID HERE" ] 


      } 


    ]


    32. Redbooth




      { 


        "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


        "actions" : [ "ACTION ID HERE" ] 


      } 


    ]


    33. Fitbit




      { 


        "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


        "actions" : [ "ACTION ID HERE" ] 


      } 


    ]











    34. Shopify




      { 


         "auth" : { 


        "access_token" : "YOUR ACCESS TOKEN HERE",


        "shop" : "YOUR SHOPIFY SUB DOMAIN",


        },


        "actions" : [ "ACTION ID HERE" ] 


     } 


    ]



    35. Trello



     { 


        "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


        "actions" : [ "ACTION ID HERE" ] 


     } 


    ]









    36. Slack



     { 


       "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


       "actions" : [ "ACTION ID HERE" ] 


     }


    37. Evernote




     { 


       "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


       "actions" : [ "ACTION ID HERE" ] 


     } 


    ]


    38. Microsoft 365



     { 


        "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


        "actions" : [ "ACTION ID HERE" ] 


     } 


    ]



    39. Dropbox Business



      { 


         "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


         "actions" : [ "ACTION ID HERE" ] 


      } 


    ]



    40. Hubb




     { 


         "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


         "actions" : [ "ACTION ID HERE" ] 


      } 


    ]



    41. ShowGizmo



      { 


        "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


        "actions" : [ "ACTION ID HERE" ] 


      } 


    ]



    42. Dropbox/Dropboxv2



      { 


        "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


        "actions" : [ "ACTION ID HERE" ] 


      } 


    ]



    43. Citrix Go to Meeting




     { 


       "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


       "actions" : [ "ACTION ID HERE" ] 


      } 


    ]



    44. Philips Hue



      { 


        "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


        "actions" : [ "ACTION ID HERE" ] 


      } 


    ]



    45. Buffer



     { 


        "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


        "actions" : [ "ACTION ID HERE" ] 


      } 


    ]



    46. Eventbrite



      {


          "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


          "actions" : [ "ACTION ID HERE" ] 


       } 


    ]








    47. Salesforce/Salesforcev2/Salesforcev3


    [

      { 


        "auth" :{ 


                    "instance_url" : "SF INSTANCE URL",


                    "_resources" : {  


                    "r0" : [ 


                                {


                                    "url": "/services/data/v30.0"


                                }


                           ] 


                      },


                   "access_token" : "SF ACCESS TOKEN"


                }, 


             "actions" : [ "ACTION ID" ]


      }


    ]


    Note: URL might be different for your API endpoint, try between v20.0 - v39.0 if v30.0 is not working for you.










    48. Wunderlist



      { 


         "auth" : {  "access_token" : "YOUR ACCESS TOKEN HERE",


         "client_id" : "YOUR CLIENT ID HERE" },


         "actions" : [ "ACTION ID HERE" ] 


      } 


    ]


    For the 'client_id' field, you can either enter '4a6607072d198fc64a4b' (the client ID supported by Built.io Flow Enterprise auth server) or can create your own client ID using your auth server or oAuth app. 


    49. Mention


       { 


          "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


          "actions" : [ "ACTION ID HERE" ] 


       } 


    ]



    50. Excel Online




        { 


           "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


           "actions" : [ "ACTION ID HERE" ] 


        } 


    ]



    51. Uber



       { 


          "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


          "actions" : [ "ACTION ID HERE" ] 


       } 


    ]



    52. Egnyte





      "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


      "actions" : [ "ACTION ID HERE" ] 



    ]







    53. Heroku



       { 


          "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


          "actions" : [ "ACTION ID HERE" ] 


       } 


    ]



    54. Linkedin



       { 


         "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },


         "actions" : [ "ACTION ID HERE" ] 


       } 


    ]



    55. Nimble




       { 



           "auth" : { "access_token" : "YOUR ACCESS TOKEN HERE" },



           "actions" : [ "ACTION ID HERE" ] 



       } 


    ]



    56. Zendesk






      "auth" : { 



    "access_token" : "YOUR ACCESS TOKEN HERE" ,



    "subdomain" : "YOUR ZENDESK SUBDOMAIN HERE" 



      },



      "actions" : [ "ACTION ID HERE" ] 





    ]


    57. Jive





      "auth" : { 



    "access_token" : "YOUR ACCESS TOKEN HERE" ,



    "jive_host" : "YOUR JIVE HOST URL HERE" 



      },



      "actions" : [ "ACTION ID HERE" ] 





    ]


    58. Twitter





      "auth" : { 



    "consumer_key" : "YOUR CONSUMER KEY HERE" ,



    "consumer_secret" : "YOUR CONSUMER SECRET HERE" ,



    "access_token" : "YOUR ACCESS TOKEN HERE" ,



    "access_secret_token" : "YOUR ACCESS SECRET TOKEN HERE" 



      },



      "actions" : [ "ACTION ID HERE" ] 





    ]


    59. Intuit (Quickbooks)







      "auth" : { 



    "access_token" : "YOUR ACCESS TOKEN HERE" ,



    "consumer_key" : "YOUR CONSUMER KEY HERE" ,



    "consumer_secret" : "YOUR CONSUMER SECRET HERE" ,



    "access_secret_token" : "YOUR ACCESS SECRET TOKEN HERE" ,



    "realmId" : "YOUR REALM ID HERE" 



      },



      "actions" : [ "ACTION ID HERE" ] 





    ]


    60. Citrix_go_to_webinar





      "auth" : { 



    "access_token" : "YOUR ACCESS TOKEN HERE",



    "organizer_key" : "YOUR ORGANIZER KEY HERE"



      },



      "actions" : [ "ACTION ID HERE" ] 





    ]