Endpoint API
Finout’s Endpoint API provides functionalities to query existing endpoints and create new ones effortlessly. You can retrieve a list of current endpoints or create new ones, with all results returned in JSON format for seamless integration and processing.
Configuring API Access
Finout API is fully secured using a secret key and client token, which can be managed from your Finout account. Your Finout account allows for five concurrent requests per API key. When you generate the API token, it creates both a secret key and a client ID (token). These parameters will be passed in the Authorization header when invoking any Finout API methods.
Important: Copy and save your Client ID and Secret Key for future use. They will only appear once and will not show again.
To configure API access:
Select your profile from the user dropdown on the top left of any screen in Finout.
Click Admin Portal.
The Profile window appears.
Select API Tokens.
The API Token screen appears.
Click Generate Token.
The Generate Token window appears.
Enter a Description, choose a role, choose token expiration, and click Create.
Your token is generated.Copy the Client ID and the Secret Key, which won't be accessible later, and then click Done.
Add the Client ID and Secret Key in Headers when invoking any of the Finout endpoints:
GET Endpoints
Description
Gets a list of all your account endpoints.
Prerequisites
Generate a Client ID and Secret Key from Finout to add in Headers.
Base URL
The base URL for all API requests is: https://app.finout.io/v1/
Endpoints
GET/endpoints
Parameters
None
Response
Returns a JSON object with the following properties:
type: The endpoint type - email or Slack.
name: The name of the endpoint.
configuration: The Slack or email URL that is configured for the endpoint.
to: The destination address or endpoint for the notification.
createdBy: The creator of the endpoint.
createdAt: The time and date the endpoint was created.
id: The unique identifier of your account's views.
requestId: The ID of this specific request.
Example
Request:
https://app.finout.io/v1/endpoints
Response:
{
"endpoints": [
{
"type": "email",
"name": "[email protected]",
"configuration": {
"to": "[email protected]"
},
"createdBy": "example",
"createdAt": "Thu Dec 28 2023 14:09:57 GMT+0000 (Greenwich Mean Time)",
"id": "7fecf9fb-4f36-4931-8d02-9cc53bb26af3"
},
{
"type": "slack",
"name": "Demo-Finout",
"configuration": {
"to": "https://hooks.slack.com/services/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"
},
"createdBy": "Demo-Finout",
"createdAt": "Sun Feb 26 2023 14:33:35 GMT+0000 (Greenwich Mean Time)",
"id": "4f806937-6f5b-478e-a81a-f4b2ece14bb1"
},
],
"requestId": "3b4c8ee0-9d97-4042-8265-ce837a87469d"
}
Errors
400 | Bad Request |
401 | Unauthorized |
429 | Too many requests |
503 | Server unavailable |
504 | Gateway Timeout |
POST Endpoints
Description
Creates an email or Slack endpoint in Finout.
Prerequisites
Generate a Client ID and Secret Key from Finout to add in Headers.
Base URL
The base URL for all API requests is: https://app.finout.io/v1/
Endpoints
POST/endpoints
Parameters
Parameter | Type | Description |
type | String | The endpoint type (Email or Slack). |
name | String | The name of the endpoint. |
configuration | Object | The address where notifications or messages are sent.
|
to | String | The destination address or endpoint for the notification. -For Slack: Add the Slack webhook URL.
For details, see how to configure Slack webhooks. |
Response
Returns a JSON object with the following properties:
accountId: The account id of the endpoint.
createdby: The creator of the endpoint.
type: the endpoint type - email or Slack.
name: The name of the endpoint.
configuration: What the endpoint was configured to.
to: The destination address or endpoint for the notification.
createdAt: The time and date the endpoint was created.
updatedAt: The time and date the endpoint was updated.
id: The unique identifier of your account's views.
requestId: The ID of this specific request.
Example
Request:
https://app.finout.io/v1/endpoints
Body of request:
{
"type": "email",
"name": "demo",
"configuration": {
"to": "[email protected]"
}
}
Response:
{
"endpoint": {
"accountId": "e6ad4c08-9ecd-4592-be61-7a13ad456259",
"createdBy": "[email protected]",
"type": "email",
"name": "demo",
"configuration": {
"to": "[email protected]"
},
"createdAt": "Tue Jul 23 2024 13:19:59 GMT+0000 (Greenwich Mean Time)",
"updatedAt": "Tue Jul 23 2024 13:19:59 GMT+0000 (Greenwich Mean Time)",
"id": "b1da19ec-1bbc-4251-993a-73567b71d88d"
},
"requestId": "4839ad2b-97b9-4dbb-a959-bb78f13b7463"
}
Errors
400 | Bad Request |
401 | Unauthorized |
429 | Too many requests |
503 | Server unavailable |
504 | Gateway Timeout |