Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- swagger: '2.0'
- info:
- description: All API Documentation for 'Form my Family' Software.
- version: 1.0.0
- title: For my Family
- host: '35.182.67.173:3000'
- basePath: /api
- tags:
- - name: Authentication
- description: Operations about user's authentication
- schemes:
- - http
- paths:
- /auth/signup:
- post:
- tags:
- - Authentication
- summary: Create new user (form url encoded)
- operationId: createUser
- produces:
- - application/json
- parameters:
- - in: body
- name: body
- description: Created user object and returns an authentication token
- required: true
- schema:
- $ref: '#/definitions/User'
- responses:
- default:
- description: '{ accessToken: string }'
- /auth/signin:
- post:
- tags:
- - Authentication
- summary: Login authentication for user (form url encoded)
- operationId: userLogin
- produces:
- - application/json
- parameters:
- - in: body
- name: body
- description: Login User and returns an authentication token
- required: true
- schema:
- type: object
- properties:
- email:
- type: string
- password:
- type: string
- responses:
- '200':
- description: '{ accessToken: String, user: Object }'
- '400':
- description: '{ message: Invalid username or password }'
- /users/password:
- post:
- tags:
- - Authentication
- summary: ' (form url encoded)'
- operationId: userPasswordChange
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - in: body
- name: body
- description: User password changes (token required)
- required: true
- schema:
- type: object
- properties:
- currentPassword:
- type: string
- newPassword:
- type: string
- verifyPassword:
- type: string
- responses:
- '200':
- description: '{ message: Password changed successfully }'
- schema:
- type: string
- '422':
- description: >-
- { message: Current password is incorrect }, { message: Passwords do
- not match }
- '500':
- description: Invalid or expired Token
- /auth/forgot:
- post:
- tags:
- - Authentication
- summary: ' (form url encoded)'
- operationId: passwordForgot
- produces:
- - application/json
- parameters:
- - in: body
- name: body
- description: User password changes (token required)
- required: true
- schema:
- type: object
- properties:
- email:
- type: string
- responses:
- '200':
- description: >-
- { message: An email has been sent to the provided email with further
- instructions. }
- '400':
- description: '{ message: No account with that username or email has been found }'
- /api/member_types:
- post:
- tags:
- - Member types (Token required)
- summary: ' member type (form url encoded)'
- operationId: new Member type
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - in: body
- name: body
- description: Adding a new member type (token required)
- required: true
- schema:
- type: object
- properties:
- title:
- type: string
- description:
- type: string
- responses:
- '200':
- description: >-
- { created: date, title: string, description: string, _id: string,
- creator: date }
- schema:
- type: string
- '500':
- description: Invalid or expired Token
- get:
- tags:
- - Member types (Token required)
- summary: Get all member types
- operationId: Get all member types
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- responses:
- '200':
- description: '[memberTypes]'
- '500':
- description: Invalid or expired Token
- '/api/member_type/{memberTypeId}':
- delete:
- tags:
- - Member types (Token required)
- summary: Delete current member type by id
- description: Delete current member type by id
- operationId: Delete member type by id
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: memberTypeId
- in: path
- description: ID of member type to delete
- required: true
- type: string
- responses:
- '200':
- description: >-
- { created: date, title: string, description: string, _id: string,
- creator: object }
- '500':
- description: Invalid or expired Token
- put:
- tags:
- - Member types (Token required)
- summary: Update current member type by id
- description: Update current member type by id
- operationId: Update member type by id
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: memberTypeId
- in: path
- description: ID of member type to delete
- required: true
- type: string
- - name: body
- in: body
- description: Adding a new member type (token required)
- required: true
- schema:
- type: object
- properties:
- title:
- type: string
- description:
- type: string
- responses:
- '200':
- description: >-
- { created: date, title: string, description: string, _id: string,
- creator: object }
- '500':
- description: Invalid or expired Token
- get:
- tags:
- - Member types (Token required)
- summary: Get current member type by id
- description: Get member type by id
- operationId: Get member type by id
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: memberTypeId
- in: path
- description: ID of member type to delete
- required: true
- type: string
- responses:
- '200':
- description: >-
- { created: date, title: string, description: string, _id: string,
- creator: object }
- '500':
- description: Invalid or expired Token
- /api/groups:
- post:
- tags:
- - Groups (Token required)
- summary: ' Create new Group (form url encoded)'
- operationId: Create new Group
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: body
- in: body
- description: Adding a new Group (token required)
- required: true
- schema:
- type: object
- properties:
- group:
- type: object
- properties:
- groupName:
- type: string
- description:
- type: string
- approvalExpenses:
- type: boolean
- approvalCalendarDates:
- type: boolean
- typeSharedPercentage:
- type: string
- enum:
- - Combined
- - Fixed
- member:
- type: object
- properties:
- expenseContributor:
- type: boolean
- membertypeID:
- type: string
- responses:
- '200':
- description: >-
- { created: date, groupName: string, description: string,
- expenseMinimunApprovals: number, calendarMinimumApprovals: number:
- typeSharedPercentage: enum, _id: string, approvalExpenses: boolean,
- approvalCalendarDates: boolean }
- '500':
- description: Invalid or expired Token
- get:
- tags:
- - Groups (Token required)
- summary: Get all groups(Admin) - token required
- operationId: Get all family groups
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- responses:
- '200':
- description: '[groups]'
- '500':
- description: Invalid or expired Token
- '/api/groups/{groupId}':
- delete:
- tags:
- - Groups (Token required)
- summary: Delete current group by id
- description: Delete current group by id
- operationId: Delet group by id
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: groupId
- in: path
- description: ID of group type to delete
- required: true
- type: string
- responses:
- '200':
- description: '{ groupObject }'
- '500':
- description: Invalid or expired Token
- put:
- tags:
- - Groups (Token required)
- summary: Update current grpup by id
- description: Update current grpup by id
- operationId: Update grpup by id
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: groupId
- in: path
- description: ID of group to delete
- required: true
- type: string
- - name: body
- in: body
- description: updating a group (token required)
- required: true
- schema:
- type: object
- properties:
- groupName:
- type: string
- description:
- type: string
- responses:
- '200':
- description: '{ groupObject }'
- '500':
- description: Invalid or expired Token
- get:
- tags:
- - Groups (Token required)
- summary: Get group by id
- description: Get group by id
- operationId: Get group by id
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: groupId
- in: path
- description: ID of group
- required: true
- type: string
- responses:
- '200':
- description: '{ groupObject }'
- '500':
- description: Invalid or expired Token
- /api/manage/groups:
- get:
- tags:
- - Groups (Token required)
- summary: Get groups by creator (token required)
- operationId: Get all family groups by creator
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- responses:
- '200':
- description: '[groups]'
- '500':
- description: Invalid or expired Token
- /api/invitations:
- post:
- tags:
- - Invitations (Token required)
- summary: ' Create new Invitations (token required)'
- operationId: Create new Invitation
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: body
- in: body
- description: Adding a new Invitation (token required)
- required: true
- schema:
- type: object
- properties:
- recepterEmail:
- type: string
- groupId:
- type: string
- emailInvitation:
- type: boolean
- responses:
- '200':
- description: >-
- { message: string, data: { created: date, recepterEmail: string,
- _id: string, groupId: string, requesterId: string, creator: string,
- status: string } }
- '500':
- description: Invalid or expired Token
- '/api/invitations/accept/{invitationId}':
- put:
- tags:
- - Invitations (Token required)
- summary: Accepting invitation
- description: Accepting invitation
- operationId: Accepting invitation
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: invitationId
- in: path
- description: Id of invitation to accept
- required: true
- type: string
- - name: body
- in: body
- description: Accepting invitation (token required)
- required: true
- schema:
- type: object
- properties:
- memberTypeId:
- type: string
- responses:
- '200':
- description: '{ invitationObject }'
- '500':
- description: Invalid or expired Token
- get:
- tags:
- - Invitations (Token required)
- summary: Get invitation by id
- description: Get invitation by id
- operationId: Get invitation by id
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: invitationId
- in: path
- description: ID of invitation
- required: true
- type: string
- responses:
- '200':
- description: '{ invitationObject }'
- '500':
- description: Invalid or expired Token
- '/api/invitations/reject/{invitationId}':
- put:
- tags:
- - Invitations (Token required)
- summary: Rejecting invitation (Token required)
- description: Rejecting invitation
- operationId: Rejecting invitation
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: invitationId
- in: path
- description: Id of invitation to accept
- required: true
- type: string
- responses:
- '200':
- description: '{ invitationObject }'
- '500':
- description: Invalid or expired Token
- '/api/invitations/listbygroup/{groupId}':
- get:
- tags:
- - Invitations (Token required)
- summary: Get pending invitations by group(Token required)
- description: Get pending invitations by group(Token required)
- operationId: Get pending invitations by group(Token required)
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: groupId
- in: path
- description: Id of group to get pending
- required: true
- type: string
- - name: status
- in: query
- description: Status to filter the invitations
- required: true
- type: string
- default: pending
- responses:
- '200':
- description: '{ invitationObject }'
- '500':
- description: Invalid or expired Token
- /api/notifications/search:
- get:
- tags:
- - Notifications (Token required)
- summary: Get Last 20 notifications by user
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- responses:
- '200':
- description: '[{ invitation: array, expense: array, calendar: array }]'
- '500':
- description: Invalid or expired Token
- /api/group_members:
- get:
- tags:
- - Group Members (Token required)
- summary: Get all groups members(Admin) - token required
- operationId: Get all family group members
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- responses:
- '200':
- description: '[groupMembers]'
- '500':
- description: Invalid or expired Token
- '/api/group_members/{memberGroupId}':
- delete:
- tags:
- - Group Members (Token required)
- summary: Delete group member by id
- description: Delete group member by id
- operationId: Delete group member by id
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: memberGroupId
- in: path
- description: ID of group member type to delete
- required: true
- type: string
- responses:
- '200':
- description: '{ groupMemberObject }'
- '500':
- description: Invalid or expired Token
- put:
- tags:
- - Group Members (Token required)
- summary: Update group member
- description: Update group member
- operationId: Update group member
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: memberGroupId
- in: path
- description: ID of group member to update
- required: true
- type: string
- - name: body
- in: body
- description: updating a groupmember (token required)
- required: true
- schema:
- type: object
- properties:
- memberTypeId:
- type: string
- responses:
- '200':
- description: '{ groupmemberObject }'
- '500':
- description: Invalid or expired Token
- get:
- tags:
- - Group Members (Token required)
- summary: Get group member by id
- description: Get group member by id
- operationId: Get group member by id
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: memberGroupId
- in: path
- description: ID of group member type to get
- required: true
- type: string
- responses:
- '200':
- description: '{ groupMemberObject }'
- '500':
- description: Invalid or expired Token
- '/api/group_members/membersbygroup/{groupId}':
- get:
- tags:
- - Group Members (Token required)
- summary: Get group members by group id
- description: Get group members by group id
- operationId: Get group members by group id
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: groupId
- in: path
- description: ID of group
- required: true
- type: string
- responses:
- '200':
- description: '[groupMembersArray]'
- '500':
- description: Invalid or expired Token
- /api/events:
- post:
- tags:
- - Events (Token required)
- summary: " add new event (form url encoded)"
- operationId: "new event"
- produces:
- - "application/json"
- parameters:
- - name: "Authorization"
- in: "header"
- description: "Authorization Token"
- required: true
- type: "string"
- - name: "body"
- in: "body"
- description: "Adding a new member type (token required)"
- required: true
- schema:
- type: object
- properties:
- title:
- type: string
- details:
- type: string
- start:
- type: string
- end:
- type: string
- multiDates:
- type: boolean
- isRepeated:
- type: boolean
- groupId:
- type: string
- reminder:
- type: boolean
- responses:
- 200:
- description: "{ created: date, title: string, description: string, _id: string, creator: date }"
- schema:
- type: "string"
- 500:
- description: "Invalid or expired Token"
- get:
- tags:
- - Events (Token required)
- summary: Get all events
- description: Get all events
- operationId: all events
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- responses:
- '200':
- description: '[events Array]'
- '500':
- description: Invalid or expired Token
- '/api/events/{eventId}':
- delete:
- tags:
- - Events (Token required)
- summary: Delete event by id
- description: Delete event by id
- operationId: Delete event by id
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: eventId
- in: path
- description: ID OF ANY EVENT
- required: true
- type: string
- responses:
- '200':
- description: 'event {}'
- '500':
- description: Invalid or expired Token
- put:
- tags:
- - Events (Token required)
- summary: Update event by id
- description: Update event by id
- operationId: Update event by id
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: eventId
- in: path
- description: ID OF ANY EVENT
- required: true
- type: string
- responses:
- '200':
- description: '{event}'
- '500':
- description: Invalid or expired Token
- get:
- tags:
- - Events (Token required)
- summary: Get event by id
- description: Get event by id
- operationId: Get event by id
- produces:
- - application/json
- parameters:
- - name: Authorization
- in: header
- description: Authorization Token
- required: true
- type: string
- - name: eventId
- in: path
- description: ID OF ANY EVENT
- required: true
- type: string
- responses:
- '200':
- description: '{event}'
- '500':
- description: Invalid or expired Token
- securityDefinitions:
- petstore_auth:
- type: oauth2
- authorizationUrl: 'http://petstore.swagger.io/oauth/dialog'
- flow: implicit
- scopes:
- 'write:pets': modify pets in your account
- 'read:pets': read your pets
- api_key:
- type: apiKey
- name: api_key
- in: header
- definitions:
- User:
- type: object
- properties:
- firstName:
- type: string
- lastName:
- type: string
- email:
- type: string
- password:
- type: string
- xml:
- name: User
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement