---
openapi: 3.0.1
info:
title: API V1
version: v1
paths:
"/user":
get:
summary: info about the currently logged-in user
tags:
- User
responses:
'200':
description: success
content:
application/json:
schema:
type: object
properties:
user:
type: object
properties:
id:
type: integer
name:
type: string
description: full name
email:
type: string
description: email address
locale:
type: string
description: language code
required:
- id
- name
- email
'401':
description: not logged-in
content:
application/json:
schema:
"$ref": "#/components/schemas/Error401"
'403':
description: missing scope
content:
application/json:
schema:
"$ref": "#/components/schemas/Error403"
"/user/financial_overview":
get:
summary: financial summary about the currently logged-in user
tags:
- User
- FinancialTransaction
responses:
'200':
description: success
content:
application/json:
schema:
type: object
properties:
account_balance:
type: number
description: booked accout balance of ordergroup
available_funds:
type: number
description: fund available to order articles
financial_transaction_class_sums:
type: object
properties:
id:
type: integer
description: id of the financial transaction class
name:
type: string
description: name of the financial transaction class
amount:
type: number
description: sum of the amounts belonging to the financial
transaction class
required:
- id
- name
- amount
required:
- account_balance
- available_funds
- financial_transaction_class_sums
'401':
description: not logged-in
content:
application/json:
schema:
"$ref": "#/components/schemas/Error401"
'403':
description: missing scope
content:
application/json:
schema:
"$ref": "#/components/schemas/Error403"
components:
schemas:
Error:
type: object
properties:
error:
type: string
description: error code
error_description:
type: string
description: human-readable error message (localized)
Error401:
type: object
properties:
error:
type: string
description: "unauthorized"
error_description:
"$ref": "#/components/schemas/Error/properties/error_description"
Error403:
type: object
properties:
error:
type: string
description: "forbidden or invalid_scope"
error_description:
"$ref": "#/components/schemas/Error/properties/error_description"
Error404:
type: object
properties:
error:
type: string
description: "not_found"
error_description:
"$ref": "#/components/schemas/Error/properties/error_description"
Error422:
type: object
properties:
error:
type: string
description: unprocessable entity
error_description:
"$ref": "#/components/schemas/Error/properties/error_description"
securitySchemes:
oauth2:
type: oauth2
flows:
implicit:
authorizationUrl: http://localhost:3000/f/oauth/authorize
scopes:
config:user: reading Foodsoft configuration for regular users
config:read: reading Foodsoft configuration values
config:write: reading and updating Foodsoft configuration values
finance:user: accessing your own financial transactions
finance:read: reading all financial transactions
finance:write: reading and creating financial transactions
user:read: reading your own user profile
user:write: reading and updating your own user profile
offline_access: retain access after user has logged out
servers:
- url: http://{defaultHost}/f/api/v1
variables:
defaultHost:
default: localhost:3000
security:
- oauth2:
- user:read