Appmixer
Search…
Accounts
Authentication to apps.
get
/auth/:componentType
Get Accounts
get
/accounts
Get All Accounts
Example of filtering certain accounts:
// filtering acme accounts and aws accounts
curl --request GET 'http://api.acme.com/accounts?filter=service:!acme:[service]&filter=service:!appmixer:aws' \
--header 'Authorization: Bearer [ACCESS_TOKEN]'
put
/accounts/:accountId
Update Account Info
post
/accounts
Create Account
Below is an example of a request to create s Slack (Oauth2) account.
curl --request POST 'https://api.acme.com/accounts' \
--header 'Authorization: Bearer [ACCESS_TOKEN]' \
--header 'Content-Type: application/json' \
--data-raw '{
"service": "appmixer:slack",
"token": {
"accessToken": "[slack access token]",
"scope": [
"channels:write",
"groups:write",
"channels:read",
"channels:history",
"groups:read",
"groups:history",
"users:read",
"chat:write:user"
]
},
"profileInfo": {
"id" : "[Name of the account that will be used in the frontend]"
}
}'
The profileInfo object is optional. If you provide it it will be used. If you do not provide it then the requestProfileInfo from the authentication module will be used to get the profile info. Slack access tokens do not expire, therefore there is neither an expiration date nor a refresh token in the request.
Below is another example, this time for Google (Oauth2) account with access token expiration:
curl --request POST 'https://api.acme.com/accounts' \
--header 'Authorization: Bearer [ACCESS_TOKEN]' \
--header 'Content-Type: application/json' \
--data-raw '{
"service": "appmixer:google",
"token": {
"token": "[google access token]",
"expDate": "2021-02-04 15:34:48.833Z",
"refreshToken": "[google refresh token]",
"scope": [
"https://www.googleapis.com/auth/analytics",
"https://www.googleapis.com/auth/analytics.readonly",
"https://www.googleapis.com/auth/calendar",
"https://www.googleapis.com/auth/calendar.readonly",
"https://www.googleapis.com/auth/drive",
"https://www.googleapis.com/auth/drive.appdata",
"https://www.googleapis.com/auth/drive.file",
"https://mail.google.com/",
"https://www.googleapis.com/auth/gmail.compose",
"https://www.googleapis.com/auth/gmail.send",
"https://www.googleapis.com/auth/gmail.readonly",
"https://spreadsheets.google.com/feeds",
"profile",
"email"
]
}
}'
One more example, this time an API Key account:
curl --request POST 'https://api.acme.com/accounts' \
--header 'Authorization: Bearer [ACCESS_TOKEN]' \
--header 'Content-Type: application/json' \
--data-raw '{
"service": "appmixer:aws",
"token": {
"accessKeyId" : "[AWS access key ID]",
"secretKey" : "[AWS secret key]"
}
}'
post
/accounts/:accountId/test
Test Account
delete
/accounts/:accountId
Remove Account
get
/accounts/:accountId/flows
List All Flows Using Account
post
/auth/ticket
Generate Authentication Session Ticket
get
/auth/:componentType/auth-url/:ticket
Get Authentication URL
put
/auth/:componentType/ticket/:ticket
Start Authentication Session
delete
/auth/component/:componentId
Clear Authentication From Component
put
/auth/component/:componentId/:accountId
Assign Account To Component
Last modified 1yr ago
Copy link
On this page
get
Get Accounts
get
Get All Accounts
put
Update Account Info
post
Create Account
post
Test Account
delete
Remove Account
get
List All Flows Using Account
post
Generate Authentication Session Ticket
get
Get Authentication URL
put
Start Authentication Session
delete
Clear Authentication From Component
put
Assign Account To Component