EdfaPay, Inc. Branch Management API
Branch Management APIs
Branch Management APIs
openapi: 3.0.3
info:
title: Edfapay Payment Gateway Branch Management API
version: 1.0.0
description: API to initiate a payment with Edfapay.
servers:
- url: https://apidev.edfapay.com
description: Sandbox server
tags:
- name: Branch Management
description: Branch Management APIs
paths:
/api/v1/branches:
put:
tags:
- Branch Management
summary: Update Branch
description: 'Update exist Branch, ACCESS LEVEL: SUPER_ADMIN, PARTNER, MERCHANT'
operationId: editBranch
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/BranchUpdateRequest'
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ApiResponseObject'
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/ApiResponseObject'
post:
tags:
- Branch Management
summary: Create Branch
description: 'Create new Branch, ACCESS LEVEL: SUPER_ADMIN, PARTNER, MERCHANT'
operationId: createBranch
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/BranchCreateRequest'
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ApiResponseObject'
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/ApiResponseObject'
delete:
tags:
- Branch Management
summary: Delete Multi Branches
description: 'Delete multiple Branches, ACCESS LEVEL: SUPER_ADMIN, PARTNER, MERCHANT'
operationId: batchDeleteBranches_1
requestBody:
content:
application/json:
schema:
type: array
items:
type: string
format: uuid
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ApiResponseObject'
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/ApiResponseObject'
/api/v1/branches/{branchId}:
get:
tags:
- Branch Management
summary: Branch Details
description: 'Get Branch Details by BranchId, ACCESS LEVEL: SUPER_ADMIN, PARTNER, MERCHANT'
operationId: getBranchById
parameters:
- name: branchId
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ApiResponseObject'
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/ApiResponseObject'
delete:
tags:
- Branch Management
summary: Delete Branch
description: 'Delete exist Branch, ACCESS LEVEL: SUPER_ADMIN, PARTNER, MERCHANT'
operationId: deleteBranch
parameters:
- name: branchId
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ApiResponseObject'
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/ApiResponseObject'
/api/v1/branches/search:
get:
tags:
- Branch Management
summary: Search Branches
description: 'Search & Retrieve Branches, ACCESS LEVEL: SUPER_ADMIN, PARTNER, MERCHANT'
operationId: searchBranches_1
parameters:
- name: pageProperties
in: query
description: Search Pageable
required: true
schema:
$ref: '#/components/schemas/SearchPageable'
example:
pageNumber: 0
pageSize: 10
- name: searchCriteria
in: query
description: Branch Search Criteria
required: true
schema:
$ref: '#/components/schemas/BranchSearchCriteria'
example:
text: Branch
active: true
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ApiResponsePageObject'
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/ApiResponseObject'
components:
schemas:
PageableObject:
type: object
properties:
paged:
type: boolean
pageNumber:
type: integer
format: int32
pageSize:
type: integer
format: int32
offset:
type: integer
format: int64
sort:
type: array
items:
$ref: '#/components/schemas/SortObject'
unpaged:
type: boolean
ApiResponseObject:
type: object
properties:
code:
type: integer
format: int32
message:
type: string
errorCode:
type: string
data:
type: object
SortObject:
type: object
properties:
direction:
type: string
nullHandling:
type: string
ascending:
type: boolean
property:
type: string
ignoreCase:
type: boolean
SearchPageable:
type: object
properties:
pageNumber:
type: integer
format: int32
sortDirection:
type: string
enum:
- ASC
- DESC
pageSize:
type: integer
format: int32
sortBy:
type: string
BranchSearchCriteria:
type: object
properties:
text:
type: string
countryCode:
type: string
cityId:
type: string
address:
type: string
active:
type: boolean
createdTimeTo:
type: string
format: date
createdTimeFrom:
type: string
format: date
businessUnitHierarchies:
type: array
items:
type: string
format: uuid
ApiResponsePageObject:
type: object
properties:
code:
type: integer
format: int32
message:
type: string
errorCode:
type: string
data:
$ref: '#/components/schemas/PageObject'
BranchCreateRequest:
required:
- countryCode
- name
type: object
properties:
name:
type: string
nameAR:
type: string
address:
type: string
countryCode:
type: string
cityId:
type: integer
format: int32
active:
type: boolean
parentBusinessUnitId:
type: string
format: uuid
BranchUpdateRequest:
required:
- countryCode
- id
- name
type: object
properties:
id:
type: string
format: uuid
name:
type: string
nameAR:
type: string
address:
type: string
countryCode:
type: string
cityId:
type: integer
format: int32
active:
type: boolean
PageObject:
type: object
properties:
totalPages:
type: integer
format: int32
totalElements:
type: integer
format: int64
pageable:
$ref: '#/components/schemas/PageableObject'
first:
type: boolean
last:
type: boolean
size:
type: integer
format: int32
content:
type: array
items:
type: object
number:
type: integer
format: int32
sort:
type: array
items:
$ref: '#/components/schemas/SortObject'
numberOfElements:
type: integer
format: int32
empty:
type: boolean