Buxfer Social API

Groups, contacts and loans for shared expenses.

OpenAPI Specification

buxfer-social-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Buxfer Accounts Social API
  version: '1.0'
  description: 'Faithful OpenAPI representation of the publicly documented Buxfer REST API (https://www.buxfer.com/help/api). Buxfer is a personal finance and money management platform; this API lets a client read accounts, transactions, tags, budgets, reminders, groups, contacts and loans, and create/edit/delete transactions and upload statements. Authentication is a login call that returns an ephemeral token which must be passed as a `token` query parameter on every subsequent request. Responses use a JSON envelope with a `response` object whose `status` is either `OK` or `ERROR: <description>`.'
  contact:
    name: Buxfer Support
    url: https://www.buxfer.com/help/
  x-apievangelist-method: generated
  x-apievangelist-source: https://www.buxfer.com/help/api
servers:
- url: https://www.buxfer.com/api
  description: Buxfer production API
security:
- token: []
tags:
- name: Social
  description: Groups, contacts and loans for shared expenses.
paths:
  /loans:
    get:
      operationId: listLoans
      tags:
      - Social
      summary: List loans
      description: List outstanding loans with friends and groups.
      parameters:
      - name: token
        in: query
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Loans list.
          content:
            application/json:
              schema:
                type: object
                properties:
                  response:
                    type: object
                    properties:
                      status:
                        type: string
                      loans:
                        type: array
                        items:
                          $ref: '#/components/schemas/Loan'
  /groups:
    get:
      operationId: listGroups
      tags:
      - Social
      summary: List groups
      description: List shared-expense groups with member balances.
      parameters:
      - name: token
        in: query
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Groups list.
          content:
            application/json:
              schema:
                type: object
                properties:
                  response:
                    type: object
                    properties:
                      status:
                        type: string
                      groups:
                        type: array
                        items:
                          $ref: '#/components/schemas/Group'
  /contacts:
    get:
      operationId: listContacts
      tags:
      - Social
      summary: List contacts
      description: List contacts with outstanding balances.
      parameters:
      - name: token
        in: query
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Contacts list.
          content:
            application/json:
              schema:
                type: object
                properties:
                  response:
                    type: object
                    properties:
                      status:
                        type: string
                      contacts:
                        type: array
                        items:
                          $ref: '#/components/schemas/Contact'
components:
  schemas:
    Contact:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
        email:
          type: string
        balance:
          type: number
    Group:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
        consolidated:
          type: boolean
        members:
          type: array
          items:
            type: object
            properties:
              id:
                type: integer
              name:
                type: string
              email:
                type: string
              balance:
                type: number
    Loan:
      type: object
      properties:
        entity:
          type: string
        type:
          type: string
          enum:
          - group
          - contact
        balance:
          type: number
        description:
          type: string
  securitySchemes:
    token:
      type: apiKey
      in: query
      name: token
      description: Ephemeral token returned by the login operation, passed as a query parameter on every subsequent request.