Finout Endpoints API

Query and create notification endpoints

OpenAPI Specification

finout-endpoints-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Finout Cost Endpoints API
  description: The Finout API provides seamless access to powerful cloud cost management tools, enabling you to integrate, analyze, and optimize your cloud expenses. It includes endpoints for cost insights, tagging, forecasting, and more, empowering teams to automate workflows, track spending, and drive efficiency across cloud environments.
  version: 1.0.0
  contact:
    name: Finout
    url: https://www.finout.io/
  termsOfService: https://www.finout.io/
servers:
- url: https://app.finout.io/v1
  description: Finout Production API
security:
- clientId: []
  secretKey: []
tags:
- name: Endpoints
  description: Query and create notification endpoints
paths:
  /endpoints:
    get:
      operationId: listEndpoints
      summary: Finout Get all endpoints
      description: Gets a list of all notification endpoints for the account.
      tags:
      - Endpoints
      responses:
        '200':
          description: A list of endpoints.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Endpoint'
        '401':
          description: Unauthorized.
        '429':
          description: Too many requests.
    post:
      operationId: createEndpoint
      summary: Finout Create an endpoint
      description: Creates an email, Slack, or Microsoft Teams notification endpoint in Finout.
      tags:
      - Endpoints
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EndpointInput'
      responses:
        '200':
          description: Endpoint created successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Endpoint'
        '400':
          description: Bad request.
        '401':
          description: Unauthorized.
        '429':
          description: Too many requests.
components:
  schemas:
    EndpointInput:
      type: object
      description: Input for creating a notification endpoint.
      required:
      - name
      - type
      - configuration
      properties:
        name:
          type: string
          description: The name of the endpoint.
        type:
          type: string
          description: The type of endpoint to create.
          enum:
          - email
          - slack
          - teams
        configuration:
          type: object
          required:
          - to
          description: Endpoint-specific configuration.
          properties:
            to:
              type: string
              description: The destination address. An email address for email endpoints or a webhook URL for Slack/Teams endpoints.
    Endpoint:
      type: object
      description: A notification endpoint configuration.
      properties:
        id:
          type: string
          description: The unique identifier of the endpoint.
        name:
          type: string
          description: The name of the endpoint.
        type:
          type: string
          description: The type of endpoint.
          enum:
          - email
          - slack
          - teams
        configuration:
          type: object
          description: Endpoint-specific configuration.
          properties:
            to:
              type: string
              description: The destination address. An email address for email endpoints or a webhook URL for Slack/Teams endpoints.
  securitySchemes:
    clientId:
      type: apiKey
      in: header
      name: x-finout-client-id
      description: The Client ID generated from the Finout Admin Portal under API Tokens.
    secretKey:
      type: apiKey
      in: header
      name: x-finout-secret-key
      description: The Secret Key generated from the Finout Admin Portal under API Tokens. This value is only shown once at generation time.