node-red-contrib-monogoto-operator
Version:
Allows communicating with the Monogoto Operator API from node-red.
1,700 lines (1,692 loc) • 336 kB
YAML
swagger: '2.0'
info:
version: 0.0.3
title: Operator API
description: monogoto.io API Server for system operator
tags:
- name: Auth
description: API Authentication
- name: APN
description: >-
Access Point Names - HSS configuration of APN is relevant only for system
that supports LTE functionality
- name: Bundle
description: Bundles API
- name: Branding
description: 'Branding (Logo , Favicon and Application name) for organization'
- name: Customers
description: Customers API
- name: IP Pools
description: IP Pools API
- name: IP Allocation
description: IP Allocation API
- name: Users
description: Users API
- name: SIM
description: SIM Key and Provision API
- name: Roaming policy
description: Roaming policy API
- name: Roaming partner
description: Roaming partner API
- name: Selection Rules
description: >-
Selection Rules APIs - relevant for system that supports dynamic sim
allocation functionality
- name: Subscription Profiles
description: Subscription Profiles API
- name: SMS
description: General SMS sending
- name: Price Plan
description: Price Plan
- name: Network Provider
description: Network Provider API
- name: Billing Reports
description: >-
Billing reports APIs - relevant for system that supports billing
functionality
- name: Billing
description: Billing APIs
- name: Password Resets
description: Password Resets API
- name: Audit Logs
description: Audit Logs API
- name: CHR
description: CHR
- name: Mobile Identity
description: APIs for managing mobile Identities
- name: vRouter
description: vRouter API - relevant for system that is served by JpU PGW
- name: ExternalHLR
description: >-
External HLR APIs - relevant for system that supports dynamic sim
allocation functionality
- name: VLR 2 External HLR Mapping
description: >-
VLR 2 External HLR Mapping APIs - relevant for system that supports
dynamic sim allocation functionality
- name: PGW
description: PGW - relevant for system that is served by JpU ggsn
- name: Data Location Service
description: Data Location Service
- name: Operator
description: Operator API
- name: Organization
description: Organization
- name: Report Template
description: Report Template
- name: Report History
description: Report History
- name: UserProfile
description: User Profile
- name: GGSN
description: GGSN APIs
basePath: /
schemes:
- https
consumes:
- application/json
produces:
- application/json
paths:
/Auth:
x-swagger-router-controller: auth
post:
tags:
- Auth
description: >
Login User by POST UserName and Password parameters. Return JSON with
JWT and Role
operationId: auth.LoginWebApi
parameters:
- name: body
in: body
description: Username and password
required: true
schema:
$ref: '#/definitions/Login'
responses:
'200':
description: Returns JSON with JWT and Role
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/ErrorResponse'
/apn:
x-swagger-router-controller: apn
get:
tags:
- APN
description: |
Returns all APNs
operationId: apn.getAllApnsWebApi
responses:
'200':
description: Array of APNs
schema:
$ref: '#/definitions/Apns'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
post:
tags:
- APN
description: |
Create new APN
operationId: apn.addApnWebApi
parameters:
- name: body
in: body
description: New APN object
required: true
schema:
$ref: '#/definitions/NewApn'
responses:
'200':
description: Newly created APN ID
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
'/apn/{ApnId}':
x-swagger-router-controller: apn
get:
tags:
- APN
description: |
Returns single APN according to given APN ID
operationId: apn.getApnWebApi
parameters:
- name: ApnId
in: path
required: true
type: string
responses:
'200':
description: APN object
schema:
$ref: '#/definitions/Apn'
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
put:
tags:
- APN
description: |
Update APN
operationId: apn.updateApnWebApi
parameters:
- name: ApnId
in: path
required: true
type: string
- name: body
in: body
description: Update APN parameters
required: true
schema:
$ref: '#/definitions/UpdateApn'
responses:
'200':
description: Update APN success
schema:
type: string
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
delete:
tags:
- APN
description: |
Delete APN
operationId: apn.deleteApnWebApi
parameters:
- name: ApnId
in: path
required: true
type: string
responses:
'200':
description: Delete APN Operation success
schema:
type: string
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
/branding:
x-swagger-router-controller: branding
post:
tags:
- Branding
description: >
Create new Branding , in order to view these changes please login again
to the portal.
operationId: branding.addBrandingWebApi
consumes:
- multipart/form-data
produces:
- application/json
parameters:
- name: Logo
in: formData
description: PNG file with logo
type: file
required: true
- name: Favicon
in: formData
description: ICO file with favicon
type: file
required: true
- name: ApplicationName
in: formData
description: New Application Name
required: true
responses:
'200':
description: >-
Newly created Branding , in order to view these changes please login
again to the portal.
'400':
description: Invalid Input Data
schema: null
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema: null
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema: null
$ref: '#/definitions/ErrorResponse'
get:
tags:
- Branding
description: |
Returns all branding if you user witout organizationId
operationId: branding.getBrandingWebApi
responses:
'200':
description: Array of Branding
schema:
$ref: '#/definitions/Brandings'
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
'/branding/{BrandingId}':
x-swagger-router-controller: branding
get:
tags:
- Branding
description: |
Returns specific branding
operationId: branding.getBrandingWebApi
parameters:
- name: BrandingId
in: path
type: string
require: true
responses:
'200':
description: Array of Branding
schema:
$ref: '#/definitions/Brandings'
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
put:
tags:
- Branding
description: >
Update Branding , in order to view these changes please login again to
the portal.
operationId: branding.addBrandingWebApi
parameters:
- name: BrandingId
in: path
required: true
type: string
- name: Logo
in: formData
description: PNG file with logo
type: file
required: true
- name: Favicon
in: formData
description: ICO file with favicon
type: file
required: true
- name: ApplicationName
in: formData
description: Branding application name
required: true
responses:
'200':
description: >-
Update Branding success , in order to view these changes please
login again to the portal.
schema:
type: string
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
delete:
tags:
- Branding
description: >
Delete Branding , in order to view these changes please login again to
the portal.
operationId: branding.deleteBrandingWebApi
parameters:
- name: BrandingId
in: path
required: true
type: string
responses:
'200':
description: >-
Delete Branding Operation success , in order to view these changes
please login again to the portal.
schema:
type: string
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
/operator:
x-swagger-router-controller: operator
get:
tags:
- Operator
description: |
Returns the operator object
operationId: operator.getOperatorWebApi
responses:
'200':
description: operator object
schema:
$ref: '#/definitions/Operator'
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
put:
tags:
- Operator
description: |
Update operator
operationId: Operator.updateOperatorWebApi
parameters:
- name: body
in: body
required: true
type: string
schema:
$ref: '#/definitions/Operator'
responses:
'200':
description: Update operator success
schema:
type: string
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
/customers/get:
x-swagger-router-controller: customers
post:
tags:
- Customers
description: |
Get customers in bulk by array of IDs
operationId: customer.getInBulk
parameters:
- name: body
in: body
description: Array of customers IDs
required: true
schema:
$ref: '#/definitions/CustomersIds'
responses:
'200':
description: Customers array
schema:
$ref: '#/definitions/Customers'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
/customers:
x-swagger-router-controller: customers
get:
tags:
- Customers
description: |
Returns all Customers
operationId: customer.get
responses:
'200':
description: Array of customers
schema:
$ref: '#/definitions/Customers'
post:
tags:
- Customers
description: >
Add multiple customers with given address. Creates default network,
telephony profile and IP profile for the customer, allocates address
pools according to number of things entered. For back compatibility,
also, working if passed an object
operationId: customer.add
parameters:
- name: body
in: body
description: Add customers parameters
required: true
schema:
$ref: '#/definitions/AddCustomers'
responses:
'200':
description: Apikey created for the customer (the same as customer ID)
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
put:
tags:
- Customers
description: |
Updating customers in bulk
operationId: customer.updateInBulk
parameters:
- name: body
in: body
description: Customers map with IDs as properties
required: true
schema:
$ref: '#/definitions/CustomerObjectsToUpdate'
responses:
'200':
description: Successfully updated
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
delete:
tags:
- Customers
description: |
Delete customers according to given customers array of IDs
operationId: customer.deleteInBulk
parameters:
- name: body
in: body
description: Array of customers IDs
required: true
schema:
$ref: '#/definitions/CustomersIds'
responses:
'200':
description: Customers successfully deleted
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
/customers/voicemohomerouting:
x-swagger-router-controller: customers
put:
tags:
- Customers
description: |
Add Gmsc address to multiple customers.
operationId: customer.voiceMoHomeRoutingWebApi
parameters:
- name: body
in: body
description: >-
The body contains the requested customers list and the voice mo home
routing parameters
required: true
schema:
$ref: '#/definitions/voicemohomerouting'
responses:
'200':
description: 'add mo voice home routing for all customers success '
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
/customer/priceplanlist:
x-swagger-router-controller: customers
get:
tags:
- Customers
description: |
Get price plan list for each customer in the system.
operationId: customer.getCustomersPricePlanListWebApi
responses:
'200':
description: 'Get price plan list for each customer success '
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
'/customers/{CustomerId}':
x-swagger-router-controller: customers
get:
tags:
- Customers
description: |
Returns single customer according to given Customer ID
operationId: customer.getSingle
parameters:
- name: CustomerId
in: path
description: Customer ID
required: true
type: string
responses:
'200':
description: Single object if Customer ID is given
schema:
$ref: '#/definitions/Customer'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
put:
tags:
- Customers
description: |
Update single Customer
operationId: customer.update
parameters:
- name: CustomerId
in: path
description: Customer ID
required: true
type: string
- name: body
in: body
description: Edit customer parameters
required: true
schema:
$ref: '#/definitions/EditCustomer'
responses:
'200':
description: Customer Successfully updated
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
delete:
tags:
- Customers
description: |
Delete customer according to given customer secret Api Key
operationId: customer.delete
parameters:
- name: CustomerId
in: path
description: Customer ID
required: true
type: string
responses:
'200':
description: Customer successfully deleted
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
/customers/roamingpolicies:
x-swagger-router-controller: customers
get:
tags:
- Customers
description: |
Get accessible roaming policies for customer"
operationId: customer.getCustomerAccessibleRoamingPolicies
parameters:
- name: apikey
in: header
description: Customer API key (equal to customer ID)
required: true
type: string
responses:
'200':
description: An array containing roaming policies objects
schema:
$ref: '#/definitions/RoamingPoliciesArray'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
'/customers/extendWantedPoolSize/{CustomerId}':
x-swagger-router-controller: customers
put:
tags:
- Customers
description: >
API endpoint to extend Pool Size of a Customer.
Will be found best matching unassigned pool and allocated it to given
customer according to PoolSize.
Then this pool will be automatically allocated to the default Network.
operationId: customer.extendWantedPoolSizeWebApi
parameters:
- name: CustomerId
in: path
description: Customer ID
required: true
type: string
- name: body
in: body
description: Body
required: true
schema:
$ref: '#/definitions/extendWantedPoolSize'
responses:
'200':
description: Private IP Pool allocation successfully completed
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
/ippools/allocatePoolToCustomer:
x-swagger-router-controller: ippools
post:
tags:
- Customers
description: >
Find best matching unassigned pool and allocate it to given customer
according to IPv type,
public/private and size. Choose smallest available pool that has size >=
WantedPoolSize. If that pool's
size is double or more of WantedPoolSize, greedily divide that pool into
smaller pools,
returning a pool that is as close as possible to WantedPoolSize
operationId: ippools.allocatePoolToCustomer
parameters:
- name: apikey
in: header
description: Customer API key (equal to customer ID)
required: true
type: string
- name: body
in: body
description: Find pool parameters
required: true
schema:
$ref: '#/definitions/allocatePoolToCustomer'
responses:
'200':
description: IP Pool ID of pool that was added
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
'/ippools/allocateSpecificPoolToCustomer/{IPPoolId}/{CustomerId}':
x-swagger-router-controller: ippools
get:
tags:
- Customers
description: |
Allocate specific pool to customer
operationId: ippools.allocateSpecificPoolToCustomer
parameters:
- name: IPPoolId
in: path
description: IP Pool ID
required: true
type: string
- name: CustomerId
in: path
description: Customer ID
required: true
type: string
responses:
'200':
description: IP Pool ID of pool that was added
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
/ippools:
x-swagger-router-controller: ippools
get:
tags:
- IP Pools
description: |
Returns IP Pools owned
operationId: ippool.get
parameters:
- name: apikey
in: header
description: Customer API key (equal to customer ID)
required: true
type: string
responses:
'200':
description: Array of IP Pools
schema:
$ref: '#/definitions/IPPools'
'404':
description: Not Found
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
'/ippools/{IPPoolId}':
x-swagger-router-controller: ippools
get:
tags:
- IP Pools
description: |
Returns IP Pool according to IPPoolId
operationId: ippool.getIPPool
parameters:
- name: apikey
in: header
description: Customer API key (equal to customer ID)
required: true
type: string
- name: IPPoolId
in: path
description: IP Pool ID
required: true
type: string
responses:
'200':
description: IP Pool
schema:
$ref: '#/definitions/IPPool'
'404':
description: Not Found
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
/ippools/operators:
x-swagger-router-controller: ippools.operators
post:
tags:
- IP Pools
description: |
Add IP pool with no customer assigned
operationId: ippools.addWithOutCustomer
parameters:
- name: body
in: body
description: Add pool parameters
required: true
schema:
$ref: '#/definitions/addPool'
responses:
'200':
description: IP Pool ID of pool that was added
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
/ippools/findPool:
x-swagger-router-controller: ippools
post:
tags:
- IP Pools
description: >
Find best matching pool allocated to given customer according to IPv
type, public/private and size.
Choose smallest available pool that has size >= WantedPoolSize.
If that pool's size is double or more of WantedPoolSize, greedily divide
that pool into smaller pools, returning a pool that is as close as
possible to WantedPoolSize.
Make sure that this pool is not the customer's public address
operationId: ippools.findPool
parameters:
- name: apikey
in: header
description: Customer API key (equal to customer ID)
required: true
type: string
- name: body
in: body
description: Find pool parameters
required: true
schema:
$ref: '#/definitions/findPool'
responses:
'200':
description: IP Pool structure
schema:
$ref: '#/definitions/IPPool'
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
'/ippools/allocatePoolToNetwork/{IPPoolId}/{NetworkId}/':
x-swagger-router-controller: ippools
get:
tags:
- IP Pools
description: >
Mark IP pool (identified by IPPool ID) as allocated to network
(identified by Network ID)
operationId: ippool.allocatePoolToNetwork
parameters:
- name: apikey
in: header
description: Customer API key (equal to customer ID)
required: true
type: string
- name: IPPoolId
in: path
description: IP Pool ID
required: true
type: string
- name: NetworkId
in: path
description: Network ID
required: true
type: string
responses:
'200':
description: Success message
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
'/ippools/freePool/{IPPoolId}':
x-swagger-router-controller: ippools
get:
tags:
- IP Pools
description: >
Mark IP pool (identified by IPPool ID) as no longer allocated to any
network. Pool still belongs to the customer
operationId: ippool.freePool
parameters:
- name: IPPoolId
in: path
description: IP Pool ID
required: true
type: string
responses:
'200':
description: Success message
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
'/ippools/subnet/{IPPoolId}':
x-swagger-router-controller: ippools
post:
tags:
- IP Pools
description: |
API endpoint to divide Network by several subnets
operationId: ippool.subnetIpool
parameters:
- name: IPPoolId
in: path
description: IP Pool ID
required: true
type: string
- name: body
in: body
description: Subnet parameters
required: true
schema:
$ref: '#/definitions/subnetIPPool'
responses:
'200':
description: Subnet operation succeed
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
/users:
x-swagger-router-controller: user
post:
tags:
- Users
description: |
Add a user. For customer specific Realm, apikey parameter is required.
For the Role field in SecurityData, please specify the UserProfileId
operationId: user.create
parameters:
- name: apikey
in: header
description: >-
Customer API key (equal to customer ID). Required for creating users
with customer Realm
required: false
type: string
- name: user
in: body
description: New user parameters
required: true
schema:
$ref: '#/definitions/PostUser'
responses:
'200':
description: Newly created User ID
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
get:
tags:
- Users
description: >
Returns all users of specific account. If no customer apikey is given,
the users of the operator are returned
operationId: user.getCustomerUsersWebApi
parameters:
- name: apikey
in: header
description: Customer API key (equal to customer ID)
required: false
type: string
responses:
'200':
description: Array of users that belong to the account
schema:
$ref: '#/definitions/Users'
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/ErrorResponse'
delete:
tags:
- Users
description: |
Delete Users in bulk
operationId: user_next.deleteUsersInBulk
parameters:
- name: apikey
in: header
description: >-
Customer API key (equal to customer ID). Required for creating users
with customer Realm
required: false
type: string
- name: users
in: body
description: Array of User Ids
required: true
schema:
type: array
items:
type: string
responses:
'200':
description: Users were deleted successfully
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
'/users/{UserId}':
x-swagger-router-controller: user
get:
tags:
- Users
description: |
Returns user entity by user ID
operationId: user.getUserByIdWebApi
parameters:
- name: apikey
in: header
description: Customer API key (equal to customer ID)
required: false
type: string
- name: UserId
in: path
description: User ID
required: true
type: string
responses:
'200':
description: User definition
schema:
$ref: '#/definitions/User'
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not found
schema:
$ref: '#/definitions/ErrorResponse'
put:
tags:
- Users
description: |
Update User entity by User ID
For the Role field in SecurityData, please specify the UserProfileId
operationId: user.update
parameters:
- name: apikey
in: header
description: Customer API key (equal to customer ID)
required: false
type: string
- name: UserId
in: path
description: User ID
required: true
type: string
- name: user
in: body
description: New user parameters
required: true
schema:
$ref: '#/definitions/PostUser'
responses:
'200':
description: Updated UserId
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/ErrorResponse'
delete:
tags:
- Users
description: |
Delete User by User ID
operationId: user.deleteUserWebApi
parameters:
- name: apikey
in: header
description: Customer API key (equal to customer ID)
required: false
type: string
- name: UserId
in: path
description: User ID
required: true
type: string
responses:
'200':
description: User was deleted successfully
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
'/users/{UserId}/activate/':
x-swagger-router-controller: user
post:
tags:
- Users
description: >
Activate (enable) user account. If user belongs to operator level, no
apikey should be given"
operationId: user.activateUserWebApi
parameters:
- name: apikey
in: header
description: Customer API key (equal to customer ID)
required: false
type: string
- name: UserId
in: path
description: User ID
required: true
type: string
responses:
'200':
description: Operation success
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/ErrorResponse'
'/users/sendVerificationLink/{UserId}/':
x-swagger-router-controller: user
get:
tags:
- Users
description: |
Send email confirmation link
operationId: user.sendVerificationLinkWebApi
parameters:
- name: UserId
in: path
description: User ID
required: true
type: string
responses:
'200':
description: Email Verification Link has been successfully sent
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/ErrorResponse'
'/users/{UserId}/deactivate/':
x-swagger-router-controller: user
post:
tags:
- Users
description: >
Deactivate user account. If user belongs to operator level, no apikey
should be given
operationId: user.inactivateUserWebApi
parameters:
- name: apikey
in: header
description: Customer API key (equal to customer ID)
required: false
type: string
- name: UserId
in: path
description: User ID
required: true
type: string
responses:
'200':
description: Operation success
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/ErrorResponse'
/users/password:
x-swagger-router-controller: user
put:
tags:
- Users
description: |
Change user's password"
operationId: user.changeUserPasswordWebApi
parameters:
- name: body
in: body
description: Current password and new password are used to change user's password
required: true
schema:
$ref: '#/definitions/ChangeUserPasswordSchema'
responses:
'200':
description: Operation success
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
/users/createInBulk/:
x-swagger-router-controller: user
post:
tags:
- Users
description: |
Create Users in bulk
operationId: user_next.createUsersInBulk
parameters:
- name: apikey
in: header
description: >-
Customer API key (equal to customer ID). Required for creating users
with customer Realm
required: false
type: string
- name: users
in: body
description: Array of Users
required: true
schema:
type: array
items:
$ref: '#/definitions/PostUser'
responses:
'200':
description: Users were created successfully
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
/users/updateInBulk/:
x-swagger-router-controller: user
put:
tags:
- Users
description: |
Update Users in bulk
operationId: user_next.updateUsersInBulk
parameters:
- name: users
in: body
description: Array of Users
required: true
schema:
type: array
items:
$ref: '#/definitions/User'
responses:
'200':
description: Users were updated successfully
'400':
description: Invalid Input Data
schema:
$ref: '#/definitions/ErrorResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
/allocateip:
x-swagger-router-controller: allocateip
post:
tags:
- IP Allocation
description: >
Allocate IP to thing according to the IP Type requested and IP pools of
the network of the things group to which the thing belongs. The thing is
identified by its external id and type such as ICCID
operationId: allocateip
parameters:
- name: body
in: body
description: Allocate IP parameters
required: true
schema:
$ref: '#/definitions/allocateip'
responses:
'200':
description: >-
The address(es) allocated to the thing according to the request. If
IPType is IPv4, then an IPv4 address is returned. If IPType is IPv6,
then and IPv6 address is returned. If IPType is 'both' then array is
returned with both addresses
'400':
description: >-
No thing is defined in the system with given external ID, or no
address pool defined for the network of this thing, or no available
IPs in the address pools of the network of this thing, or thing not
found
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
get:
tags:
- IP Allocation
description: >
Sets IPs to all things belonging to given apikey (the same as customer
ID) according to the IP pools of the networks defined for the things
groups of the things. IP allocation will attempt to allcoate both IPv4
and IPv6 according to what is actually defined in the relevant networks"
operationId: allocateip.allocateIPsToCustomerThingsv2WebAPI
parameters:
- name: apikey
in: header
description: Customer API key (equal to customer ID)
required: true
type: string
responses:
'200':
description: Success message
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
/billingreports/downloadNonBillableChargesList/:
x-swagger-router-controller: billingreports
post:
tags:
- Billing Reports
description: |
Download all non-billable charges list for given body parameters
operationId: billingreports.getNonBillableChargesListWebApi
parameters:
- name: body
in: body
description: >-
<p><ol><li><u>BillingCycleId:</u> The billing cycle ID as it is
returned from /billingreports/customerInvoices/ API response object.
For current billing cycle charges list, don't send this
parameter.<br></ol></p>
required: false
schema:
$ref: '#/definitions/DownloadChargesListBody'
responses:
'200':
description: CSV formatted test
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
/billingreports/customersChargesSummaryReport/:
x-swagger-router-controller: billingreports
post:
tags:
- Billing Reports
description: >
Generate a report with all customers charges summary report for given
body parameters, output report is in JSON format
operationId: billingreports.produceBillingChargesSummaryReportWebApi
parameters:
- name: GroupBy
in: query
description: >-
Option to group by charges results. <br/> Possible values:
'NetworkProvider'
type: string
- name: body
in: body
description: >-
<p><ol><li><u>StartDate:</u> Start date for billing charges summary
report in format: YYYY-MM-DD.<br><li><u>EndDate:</u> End date for
billing charges summary report in format: YYYY-MM-DD.</ol></p>
required: false
schema:
$ref: '#/definitions/CustomersChargesSummaryReportBody'
responses:
'200':
description: JSON formatted file name
'401':
description: Unauthorized
schema:
$ref: '#/definitions/ErrorResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/ErrorResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/ErrorResponse'
/billing/invoices/:
x-swagger-router-controller: billingreports
post:
tags:
- Billing
description: >
Generate an invoices to Customers, Organizations and Operator work if
billing service is enabled
operationId: billingreports.produceBillingInvoicesBillingServiceWebApi
parameters:
- name: GroupBy
in: query
description: 'Option to group by charges results. <br/> Possible values: ''MNO'''
type: string
- name: body
in: body
description: >-
<p><ol><li><u>StartDate:</u> Start