openapi: 3.0.3
info:
title: National Registry of Vertical Cabling (NRVC) API
version: 1.0.0-beta.1
description: |2-
The NRVC (National Registry of Vertical Cabling) platform is an initiative from MyConnectivity. The purpose of the platforme is to create a centralized repository of information on vertical cabling in Luxembourg that can be shared among all operators.
# Data model
In this project, we deal with apartment buildings and mixed-use buildings (a.k.a. multi-dwelling units). The datamodel must support the description of a site, the building blocks, the building units (such as apartments and technical rooms) and the equipments (NTPs, BAP, sockets, ...).
NTPs are the network cabinet owned by network infrastructure providers, enabling the delivery of internet services. Ultimately, we need to document the physical links (i.e. cables) existing between NTPs and the equipments in the different Units.
paths:
/api/v1/access-control-procedure-types/:
get:
operationId: api_v1_access_control_procedure_types_list
description: |-
**Description**
This endpoint is used to retrieve all Access Control Procedure Types available on the system.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: List all Access Control Procedure Types. [Any]
parameters:
- in: query
name: includeInactive
schema:
type: boolean
description: Returns also inactive types if set to true. Default value is
false.
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: name.'
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: name.'
tags:
- Access Control Procedure Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/AccessControlProcedureType'
description: ''
/api/v1/access-control-procedure-types/{access_control_procedure_type_id}/:
get:
operationId: api_v1_access_control_procedure_types_retrieve
description: |-
**Description**
This endpoint is used to retrieve an Access Control Procedure Type with a given id.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: Retrieve an Access Control Procedure Type by id. [Any]
parameters:
- in: path
name: access_control_procedure_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this access control procedure type.
required: true
tags:
- Access Control Procedure Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AccessControlProcedureType'
description: ''
/api/v1/addresses/:
get:
operationId: api_v1_addresses_list
description: |+
**Description**
This endpoint is used to retrieve a list of addresses that comply with a given search criteria. The number of results is limited.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
**Limits**
The API is paginated and users with roles others than ANALYST have access to a limited number of results.
summary: List all Addresses (search / filters required). [Any]
parameters:
- in: query
name: country
schema:
type: string
description: Country filter. (Exact case insensitive matches)
- in: query
name: houseNumber
schema:
type: integer
description: House Number filter. (Exact case insensitive matches)
- in: query
name: houseNumberExtension
schema:
type: string
description: House Number Extension filter. (Exact case insensitive matches)
- in: query
name: includeDeleted
schema:
type: boolean
description: Returns also deleted addresses if set to true. Default value
is false.
- in: query
name: latitude
schema:
type: number
format: float
description: Latitude (Exact match)
- in: query
name: locality
schema:
type: string
description: Locality filter. (Exact case insensitive matches)
- in: query
name: longitude
schema:
type: number
format: float
description: Longitude (Exact match)
- in: query
name: mengplazId
schema:
type: string
description: Mengplaz ID. (Exact matches)
- in: query
name: municipality
schema:
type: string
description: Municipality filter. (Exact case insensitive matches)
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: postal_code, locality, municipality, country,
street, street_alternative.'
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- name: pageSize
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: postalCode
schema:
type: string
description: Postal Code filter. (Exact case insensitive matches)
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: full address string.'
- in: query
name: sgglId
schema:
type: string
description: External ID “Post database”. (Exact matches)
- in: query
name: street
schema:
type: string
description: Street Name filter. (Exact case insensitive matches)
tags:
- Addresses
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedAddressList'
description: ''
post:
operationId: api_v1_addresses_create
description: "**Description**\n\nThis endpoint is used to create an address.\
\ These addresses are not considered as validated.Not validated address will\
\ be automatically validated by an ETL process. \n\n**Roles**\n\n- Editor"
summary: Create a non validated Address [Editor]
tags:
- Addresses
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Address'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Address'
multipart/form-data:
schema:
$ref: '#/components/schemas/Address'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/Address'
description: ''
/api/v1/addresses/{address_id}/:
get:
operationId: api_v1_addresses_retrieve
description: |-
**Description**
This endpoint is used to retrieve an address with a given id.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: Retrieve an Addresses by id. [Any]
parameters:
- in: path
name: address_id
schema:
type: string
format: uuid
description: A UUID string identifying this address.
required: true
tags:
- Addresses
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Address'
description: ''
/api/v1/admin/access-control-procedure-types/:
get:
operationId: api_v1_admin_access_control_procedure_types_list
description: |
**Description**
This endpoint is used to retrieve all Access Control Procedure Types.
**Roles**
- Application Administrator
summary: List all Access Control Procedure Types. [Application Admin]
parameters:
- in: query
name: includeInactive
schema:
type: boolean
description: Returns also inactive types if set to true. Default value is
false.
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: name.'
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: name.'
tags:
- Application Admin - Access Control Procedure Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/AccessControlProcedureType'
description: ''
post:
operationId: api_v1_admin_access_control_procedure_types_create
description: |
**Description**
Create a new Access Control Procedure Type.
**Roles**
- Application Administrator
summary: Create a new Access Control Procedure Type. [Application Admin]
tags:
- Application Admin - Access Control Procedure Types
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AccessControlProcedureType'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/AccessControlProcedureType'
multipart/form-data:
schema:
$ref: '#/components/schemas/AccessControlProcedureType'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/AccessControlProcedureType'
description: ''
/api/v1/admin/access-control-procedure-types/{access_control_procedure_type_id}/:
get:
operationId: api_v1_admin_access_control_procedure_types_retrieve
description: |
**Description**
This endpoint allows you to retrieve an Access Control Procedure Type by its ID.
**Roles**
- Application Administrator
summary: Get an Access Control Procedure Type by ID. [Application Admin]
parameters:
- in: path
name: access_control_procedure_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this access control procedure type.
required: true
tags:
- Application Admin - Access Control Procedure Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AccessControlProcedureType'
description: ''
put:
operationId: api_v1_admin_access_control_procedure_types_update
description: |
**Description**
This endpoint allows you to update an existing Access Control Procedure Type.
**Roles**
- Application Administrator
summary: Update an Access Control Procedure Type by ID. [Application Admin]
parameters:
- in: path
name: access_control_procedure_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this access control procedure type.
required: true
tags:
- Application Admin - Access Control Procedure Types
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AccessControlProcedureType'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/AccessControlProcedureType'
multipart/form-data:
schema:
$ref: '#/components/schemas/AccessControlProcedureType'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AccessControlProcedureType'
description: ''
patch:
operationId: api_v1_admin_access_control_procedure_types_partial_update
description: |
**Description**
This endpoint allows you to update an existing Access Control Procedure Type partially, by only sending the parameters you want to update.
**Roles**
- Application Administrator
summary: Partially update an Access Control Procedure Type by ID. [Application
Admin]
parameters:
- in: path
name: access_control_procedure_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this access control procedure type.
required: true
tags:
- Application Admin - Access Control Procedure Types
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedAccessControlProcedureType'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedAccessControlProcedureType'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedAccessControlProcedureType'
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AccessControlProcedureType'
description: ''
delete:
operationId: api_v1_admin_access_control_procedure_types_destroy
description: |
**Description**
Soft delete a specific Access Control Procedure Type.
**Roles**
- Application Administrator
summary: Soft delete an Access Control Procedure Type [Application Admin].
parameters:
- in: path
name: access_control_procedure_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this access control procedure type.
required: true
tags:
- Application Admin - Access Control Procedure Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'204':
description: No response body
/api/v1/admin/addresses/:
get:
operationId: api_v1_admin_addresses_list
description: |
**Description**
This endpoint is used to retrieve all Addresses.
**Roles**
- Application Administrator
summary: List all Addresses. [Application Admin]
parameters:
- in: query
name: country
schema:
type: string
description: Country filter. (Exact case insensitive matches)
- in: query
name: houseNumber
schema:
type: integer
description: House Number filter. (Exact case insensitive matches)
- in: query
name: houseNumberExtension
schema:
type: string
description: House Number Extension filter. (Exact case insensitive matches)
- in: query
name: includeDeleted
schema:
type: boolean
description: Returns also deleted addresses if set to true. Default value
is false.
- in: query
name: latitude
schema:
type: number
format: float
description: Latitude (Exact match)
- in: query
name: locality
schema:
type: string
description: Locality filter. (Exact case insensitive matches)
- in: query
name: longitude
schema:
type: number
format: float
description: Longitude (Exact match)
- in: query
name: mengplazId
schema:
type: string
description: Mengplaz ID. (Exact matches)
- in: query
name: municipality
schema:
type: string
description: Municipality filter. (Exact case insensitive matches)
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: postal_code, locality, municipality, country,
street, street_alternative.'
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- name: pageSize
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: postalCode
schema:
type: string
description: Postal Code filter. (Exact case insensitive matches)
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: full address string.'
- in: query
name: sgglId
schema:
type: string
description: External ID “Post database”. (Exact matches)
- in: query
name: street
schema:
type: string
description: Street Name filter. (Exact case insensitive matches)
tags:
- Application Admin - Addresses
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedAddressAdminList'
description: ''
post:
operationId: api_v1_admin_addresses_create
description: |+
**Description**
Create a new Address.
**Roles**
- Application Administrator
**Limits**
The API is paginated.
summary: Create a new Address. [Application Admin]
tags:
- Application Admin - Addresses
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AddressAdmin'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/AddressAdmin'
multipart/form-data:
schema:
$ref: '#/components/schemas/AddressAdmin'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/AddressAdmin'
description: ''
/api/v1/admin/addresses/{address_id}/:
get:
operationId: api_v1_admin_addresses_retrieve
description: |
**Description**
This endpoint allows you to retrieve an Address by its ID.
**Roles**
- Application Administrator
summary: Get an Address by ID. [Application Admin]
parameters:
- in: path
name: address_id
schema:
type: string
format: uuid
description: A UUID string identifying this address.
required: true
tags:
- Application Admin - Addresses
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AddressAdmin'
description: ''
put:
operationId: api_v1_admin_addresses_update
description: |
**Description**
This endpoint allows you to update an existing Address.
**Roles**
- Application Administrator
summary: Update an Address by ID. [Application Admin]
parameters:
- in: path
name: address_id
schema:
type: string
format: uuid
description: A UUID string identifying this address.
required: true
tags:
- Application Admin - Addresses
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AddressAdmin'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/AddressAdmin'
multipart/form-data:
schema:
$ref: '#/components/schemas/AddressAdmin'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AddressAdmin'
description: ''
patch:
operationId: api_v1_admin_addresses_partial_update
description: |
**Description**
This endpoint allows you to update an existing Address partially, by only sending the parameters you want to update.
**Roles**
- Application Administrator
summary: Partially update an Address by ID. [Application Admin]
parameters:
- in: path
name: address_id
schema:
type: string
format: uuid
description: A UUID string identifying this address.
required: true
tags:
- Application Admin - Addresses
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedAddressAdmin'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedAddressAdmin'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedAddressAdmin'
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AddressAdmin'
description: ''
delete:
operationId: api_v1_admin_addresses_destroy
description: |
**Description**
Soft delete a specific Address.
**Roles**
- Application Administrator
summary: Soft delete an Address [Application Admin].
parameters:
- in: path
name: address_id
schema:
type: string
format: uuid
description: A UUID string identifying this address.
required: true
tags:
- Application Admin - Addresses
security:
- tokenAuth: []
- cookieAuth: []
responses:
'204':
description: No response body
/api/v1/admin/api-users/:
get:
operationId: api_v1_admin_api_users_list
description: |
**Description**
This endpoint is used to retrieve all API Users.
**Roles**
- Application Administrator
- Organisation Administrator
summary: List all API Users. [Application Admin / Organisation Admin]
parameters:
- in: query
name: includeDeleted
schema:
type: boolean
description: Returns also deleted API Users if set to true. Default value
is false.
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: username, organisation__name.'
- in: query
name: organisationId
schema:
type: string
description: Organisation ID filter. (Exact matches)
- in: query
name: roleId
schema:
type: string
description: Role ID filter. (Exact matches)
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: username.'
tags:
- Admin - API Users
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/APIUser'
description: ''
post:
operationId: api_v1_admin_api_users_create
description: |
**Description**
Create a new API User.
**Roles**
- Application Administrator
- Organisation Administrator
summary: Create a new API User. [Application Admin / Organisation Admin]
tags:
- Admin - API Users
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/APIUser'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/APIUser'
multipart/form-data:
schema:
$ref: '#/components/schemas/APIUser'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/APIUser'
description: ''
/api/v1/admin/api-users/{user_id}/:
get:
operationId: api_v1_admin_api_users_retrieve
description: |
**Description**
This endpoint allows you to retrieve an equipment by its ID.
**Roles**
- Application Administrator
- Organisation Administrator
summary: Get an API User by ID. [Application Admin / Organisation Admin]
parameters:
- in: path
name: user_id
schema:
type: string
format: uuid
description: A UUID string identifying this utilisateur.
required: true
tags:
- Admin - API Users
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/APIUser'
description: ''
put:
operationId: api_v1_admin_api_users_update
description: |
**Description**
This endpoint allows you to update an existing API User.
**Roles**
- Application Administrator
- Organisation Administrator
summary: Update an API User by ID. [Application Admin / Organisation Admin]
parameters:
- in: path
name: user_id
schema:
type: string
format: uuid
description: A UUID string identifying this utilisateur.
required: true
tags:
- Admin - API Users
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/APIUser'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/APIUser'
multipart/form-data:
schema:
$ref: '#/components/schemas/APIUser'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/APIUser'
description: ''
patch:
operationId: api_v1_admin_api_users_partial_update
description: |
**Description**
This endpoint allows you to update an existing API User partially, by only sending the parameters you want to update.
**Roles**
- Application Administrator
- Organisation Administrator
summary: Partially update an API User by ID. [Application Admin / Organisation
Admin]
parameters:
- in: path
name: user_id
schema:
type: string
format: uuid
description: A UUID string identifying this utilisateur.
required: true
tags:
- Admin - API Users
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedAPIUser'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedAPIUser'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedAPIUser'
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/APIUser'
description: ''
delete:
operationId: api_v1_admin_api_users_destroy
description: |
**Description**
Soft delete a specific API User.
**Roles**
- Application Administrator
- Organisation Administrator
summary: Soft delete an API User [Application Admin / Organisation Admin].
parameters:
- in: path
name: user_id
schema:
type: string
format: uuid
description: A UUID string identifying this utilisateur.
required: true
tags:
- Admin - API Users
security:
- tokenAuth: []
- cookieAuth: []
responses:
'204':
description: No response body
/api/v1/admin/audit-logs/:
get:
operationId: api_v1_admin_audit_logs_list
description: |+
**Description**
This endpoint is used to retrieve all audit logs.
**Roles**
- Application Administrator
- Organisation Administrator
**Limits**
The API is paginated.
summary: List all audit logs. [Application Admin / Organisation Admin]
parameters:
- in: query
name: entityId
schema:
type: string
description: The id of the entity (object) you want to filter. (Exact matches)
- in: query
name: entityName
schema:
type: string
description: The name of the entity you want to filter. (Exact matches)
- in: query
name: ipAddress
schema:
type: string
description: The IP address of the user making the request. (Exact matches)
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: created_at.'
- in: query
name: organisationId
schema:
type: string
description: Organisation ID filter. (Exact matches)
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- name: pageSize
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: responseStatus
schema:
type: string
description: The response status of the request. (Exact matches)
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: user__username, organisation__name,
entity_id, entity_name.'
- in: query
name: userId
schema:
type: string
description: User ID filter. (Exact matches)
tags:
- Admin - Audit Logs
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedAuditLogList'
description: ''
/api/v1/admin/audit-logs/{audit_log_id}/:
get:
operationId: api_v1_admin_audit_logs_retrieve
description: |
**Description**
This endpoint allows you to retrieve an audit log by its ID.
**Roles**
- Application Administrator
- Organisation Administrator
- Analyst
summary: Get an audit log by ID. [Application Admin / Organisation Admin]
parameters:
- in: path
name: audit_log_id
schema:
type: string
format: uuid
description: A UUID string identifying this audit log.
required: true
tags:
- Admin - Audit Logs
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AuditLog'
description: ''
/api/v1/admin/blocks/:
get:
operationId: api_v1_admin_blocks_list
description: |+
**Description**
This endpoint can be used to retrieve all blocks or all blocks linked to a specific site. Getting the blocks of specific site is done by adding the query parameter site with the uuid of the desired site.
**Roles**
- Application Administrator
- Organisation Administrator
**Limits**
The API is paginated and Organisation Administrators have access to a limited number of results.
summary: List all blocks. [Application Admin - Organisation Admin]
parameters:
- in: query
name: country
schema:
type: string
description: Country filter. (Exact case insensitive matches)
- in: query
name: houseNumber
schema:
type: integer
description: House Number filter. (Exact case insensitive matches)
- in: query
name: houseNumberExtension
schema:
type: string
description: House Number Extension filter. (Exact case insensitive matches)
- in: query
name: includeDeleted
schema:
type: boolean
description: Returns also deleted Blocks if set to true. Default value is
false.
- in: query
name: latitude
schema:
type: number
format: float
description: Latitude (Exact match)
- in: query
name: locality
schema:
type: string
description: Locality filter. (Exact case insensitive matches)
- in: query
name: longitude
schema:
type: number
format: float
description: Longitude (Exact match)
- in: query
name: municipality
schema:
type: string
description: Municipality filter. (Exact case insensitive matches)
- in: query
name: name
schema:
type: string
description: Block Name filter. (Exact case insensitive matches)
- in: query
name: ntpOwnerEquipmentId
schema:
type: string
description: NTP Owner ID (a.k.a. the ID that identifies the Operator and
not the equipment). (Exact matches)
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: name.'
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- name: pageSize
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: postalCode
schema:
type: string
description: Postal Code filter. (Exact case insensitive matches)
- in: query
name: rnblId
schema:
type: string
description: Future ID of the RNBL. (Exact matches)
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: name, full_address
(block or site address).'
- in: query
name: sgglId
schema:
type: string
description: External ID “Post database”. (Exact matches)
- in: query
name: siteId
schema:
type: string
description: Site ID filter. (Exact matches)
- in: query
name: street
schema:
type: string
description: Street Name filter. (Exact case insensitive matches)
tags:
- Admin - Blocks
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedBlockAdminList'
description: ''
/api/v1/admin/blocks/{block_id}/:
get:
operationId: api_v1_admin_blocks_retrieve
description: |
**Description**
This endpoint allows you to retrieve a block by its UUID.
**Roles**
- Application Administrator
- Organisation Administrator
summary: Get a block by UUID. [Application Admin - Organisation Admin]
parameters:
- in: path
name: block_id
schema:
type: string
format: uuid
description: A UUID string identifying this block.
required: true
tags:
- Admin - Blocks
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/BlockAdmin'
description: ''
/api/v1/admin/blocks/{block_id}/restore/:
post:
operationId: api_v1_admin_blocks_restore_create
description: |
**Description**
Restores a soft-deleted block.
**Roles**
- Application Administrator
- Organisation Administrator
summary: Restores a soft-deleted block.
parameters:
- in: path
name: block_id
schema:
type: string
format: uuid
description: A UUID string identifying this block.
required: true
tags:
- Admin - Blocks
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/BlockAdmin'
description: ''
'400':
description: Block is not deleted.
'404':
description: 'Block not found. '
/api/v1/admin/equipment-types/:
get:
operationId: api_v1_admin_equipment_types_list
description: |
**Description**
This endpoint is used to retrieve all Equipment Types.
**Roles**
- Application Administrator
summary: List all Equipment Types. [Application Admin]
parameters:
- in: query
name: includeInactive
schema:
type: boolean
description: Returns also inactive types if set to true. Default value is
false.
- in: query
name: isBuildingAccessPoint
schema:
type: boolean
description: Set to true if you want to retrieve only building access points.
- in: query
name: isNTP
schema:
type: boolean
description: Set to true if you want to retrieve only NTP equipment.
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: name.'
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: name.'
tags:
- Application Admin - Equipment Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/EquipmentType'
description: ''
post:
operationId: api_v1_admin_equipment_types_create
description: |
**Description**
Create a new Equipment Type.
**Roles**
- Application Administrator
summary: Create a new Equipment Type. [Application Admin]
tags:
- Application Admin - Equipment Types
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/EquipmentType'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/EquipmentType'
multipart/form-data:
schema:
$ref: '#/components/schemas/EquipmentType'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/EquipmentType'
description: ''
/api/v1/admin/equipment-types/{equipment_type_id}/:
get:
operationId: api_v1_admin_equipment_types_retrieve
description: |
**Description**
This endpoint allows you to retrieve an Equipment Type by its ID.
**Roles**
- Application Administrator
summary: Get an Equipment Type by ID. [Application Admin]
parameters:
- in: path
name: equipment_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this equipment type.
required: true
tags:
- Application Admin - Equipment Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/EquipmentType'
description: ''
put:
operationId: api_v1_admin_equipment_types_update
description: |
**Description**
This endpoint allows you to update an existing Equipment Type.
**Roles**
- Application Administrator
summary: Update an Equipment Type by ID. [Application Admin]
parameters:
- in: path
name: equipment_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this equipment type.
required: true
tags:
- Application Admin - Equipment Types
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/EquipmentType'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/EquipmentType'
multipart/form-data:
schema:
$ref: '#/components/schemas/EquipmentType'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/EquipmentType'
description: ''
patch:
operationId: api_v1_admin_equipment_types_partial_update
description: |
**Description**
This endpoint allows you to update an existing Equipment Type partially, by only sending the parameters you want to update.
**Roles**
- Application Administrator
summary: Partially update an Equipment Type by ID. [Application Admin]
parameters:
- in: path
name: equipment_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this equipment type.
required: true
tags:
- Application Admin - Equipment Types
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedEquipmentType'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedEquipmentType'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedEquipmentType'
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/EquipmentType'
description: ''
delete:
operationId: api_v1_admin_equipment_types_destroy
description: |
**Description**
Soft delete a specific Equipment Type.
**Roles**
- Application Administrator
summary: Soft delete an Equipment Type [Application Admin].
parameters:
- in: path
name: equipment_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this equipment type.
required: true
tags:
- Application Admin - Equipment Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'204':
description: No response body
/api/v1/admin/equipments/:
get:
operationId: api_v1_admin_equipments_list
description: |
**Description**
This endpoint can be used to retrieve all equipments. You can filter the equipments using the different filters described below.
**Roles**
- Application Administrator
- Organisation Administrator
summary: List all equipments. [Application Admin - Organisation Admin].
parameters:
- in: query
name: equipmentTypeId
schema:
type: string
description: Type of equipment filter. (Exact matches)
- in: query
name: includeDeleted
schema:
type: boolean
description: Returns also deleted Blocks if set to true. Default value is
false.
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: owner_equipment_id, owner__name, equipment_type__name.'
- in: query
name: ownerEquipmentId
schema:
type: string
description: Owner's equipment identifier filter. (Exact matches)
- in: query
name: ownerId
schema:
type: string
description: NTP Owner ID (a.k.a. the ID that identifies the Operator and
not the equipment). (Exact matches)
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- name: pageSize
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: owner_equipment_id.'
- in: query
name: unitId
schema:
type: string
description: Unit ID filter. (Exact matches)
tags:
- Admin - Equipments
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEquipmentAdminList'
description: ''
/api/v1/admin/equipments/{equipment_id}/:
get:
operationId: api_v1_admin_equipments_retrieve
description: |+
**Description**
This endpoint allows you to retrieve an equipment by its UUID.
**Roles**
- Application Administrator
- Organisation Administrator
**Limits**
The API is paginated and Organisation Administrators have access to a limited number of results.
summary: Get an equipment by UUID. [Application Admin - Organisation Admin]
parameters:
- in: path
name: equipment_id
schema:
type: string
format: uuid
description: A UUID string identifying this equipment.
required: true
tags:
- Admin - Equipments
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/EquipmentAdmin'
description: ''
/api/v1/admin/equipments/{equipment_id}/restore/:
post:
operationId: api_v1_admin_equipments_restore_create
description: |
**Description**
Restores a soft-deleted equipment.
**Roles**
- Application Administrator
- Organisation Administrator
summary: Restores a soft-deleted equipment. [Application Admin - Organisation
Admin]
parameters:
- in: path
name: equipment_id
schema:
type: string
format: uuid
description: A UUID string identifying this equipment.
required: true
tags:
- Admin - Equipments
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/EquipmentAdmin'
description: ''
'400':
description: Equipment is not deleted.
'404':
description: Equipment not found.
/api/v1/admin/organisation-types/:
get:
operationId: api_v1_admin_organisation_types_list
description: |
**Description**
This endpoint is used to retrieve all Organisation Types.
**Roles**
- Application Administrator
summary: List all Organisation Types. [Application Admin]
parameters:
- in: query
name: includeInactive
schema:
type: boolean
description: Indicates if inactive Organisation Types should be included in
the response.
- in: query
name: isBuildingManager
schema:
type: boolean
description: Set to true if you want to retrieve only buildings managers.
- in: query
name: isEquipmentOwner
schema:
type: boolean
description: Set to true if you want to retrieve only equipment owners.
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: name.'
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: name.'
tags:
- Application Admin - Organisation Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/OrganisationType'
description: ''
post:
operationId: api_v1_admin_organisation_types_create
description: |
**Description**
Create a new Organisation Type.
**Roles**
- Application Administrator
summary: Create a new Organisation Type. [Application Admin]
tags:
- Application Admin - Organisation Types
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/OrganisationType'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/OrganisationType'
multipart/form-data:
schema:
$ref: '#/components/schemas/OrganisationType'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/OrganisationType'
description: ''
/api/v1/admin/organisation-types/{organisation_type_id}/:
get:
operationId: api_v1_admin_organisation_types_retrieve
description: |
**Description**
This endpoint allows you to retrieve an Organisation Type by its ID.
**Roles**
- Application Administrator
summary: Get an Organisation Type by ID. [Application Admin]
parameters:
- in: path
name: organisation_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this organisation type.
required: true
tags:
- Application Admin - Organisation Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/OrganisationType'
description: ''
put:
operationId: api_v1_admin_organisation_types_update
description: |
**Description**
This endpoint allows you to update an existing Organisation Type.
**Roles**
- Application Administrator
summary: Update an Organisation Type by ID. [Application Admin]
parameters:
- in: path
name: organisation_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this organisation type.
required: true
tags:
- Application Admin - Organisation Types
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/OrganisationType'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/OrganisationType'
multipart/form-data:
schema:
$ref: '#/components/schemas/OrganisationType'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/OrganisationType'
description: ''
patch:
operationId: api_v1_admin_organisation_types_partial_update
description: |
**Description**
This endpoint allows you to update an existing Organisation Type partially, by only sending the parameters you want to update.
**Roles**
- Application Administrator
summary: Partially update an Organisation Type by ID. [Application Admin]
parameters:
- in: path
name: organisation_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this organisation type.
required: true
tags:
- Application Admin - Organisation Types
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedOrganisationType'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedOrganisationType'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedOrganisationType'
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/OrganisationType'
description: ''
delete:
operationId: api_v1_admin_organisation_types_destroy
description: |
**Description**
Soft delete a specific Organisation Type.
**Roles**
- Application Administrator
summary: Soft delete an Organisation Type [Application Admin].
parameters:
- in: path
name: organisation_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this organisation type.
required: true
tags:
- Application Admin - Organisation Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'204':
description: No response body
/api/v1/admin/organisations/:
get:
operationId: api_v1_admin_organisations_list
description: |
**Description**
This endpoint is used to retrieve all Organisations.
**Roles**
- Application Administrator
summary: List all Organisations. [Application Admin]
parameters:
- in: query
name: includeInactive
schema:
type: boolean
description: Returns also inactive Organisations if set to true. Default value
is false.
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: name, email, organisation_type__name.'
- in: query
name: organisationTypeId
schema:
type: string
description: Organisation type ID filter. (Exact matches)
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: name, phone, email,
organisation_type__name.'
tags:
- Application Admin - Organisations
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Organisation'
description: ''
post:
operationId: api_v1_admin_organisations_create
description: |
**Description**
Create a new Organisation.
**Roles**
- Application Administrator
summary: Create a new Organisation. [Application Admin]
tags:
- Application Admin - Organisations
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Organisation'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Organisation'
multipart/form-data:
schema:
$ref: '#/components/schemas/Organisation'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/Organisation'
description: ''
/api/v1/admin/organisations/{organisation_id}/:
get:
operationId: api_v1_admin_organisations_retrieve
description: |
**Description**
This endpoint allows you to retrieve an Organisation by its ID.
**Roles**
- Application Administrator
summary: Get an Organisation by ID. [Application Admin]
parameters:
- in: path
name: organisation_id
schema:
type: string
format: uuid
description: A UUID string identifying this organisation.
required: true
tags:
- Application Admin - Organisations
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Organisation'
description: ''
put:
operationId: api_v1_admin_organisations_update
description: |
**Description**
This endpoint allows you to update an existing Organisation.
**Roles**
- Application Administrator
summary: Update an Organisation by ID. [Application Admin]
parameters:
- in: path
name: organisation_id
schema:
type: string
format: uuid
description: A UUID string identifying this organisation.
required: true
tags:
- Application Admin - Organisations
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Organisation'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Organisation'
multipart/form-data:
schema:
$ref: '#/components/schemas/Organisation'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Organisation'
description: ''
patch:
operationId: api_v1_admin_organisations_partial_update
description: |
**Description**
This endpoint allows you to update an existing Organisation partially, by only sending the parameters you want to update.
**Roles**
- Application Administrator
summary: Partially update an Organisation by ID. [Application Admin]
parameters:
- in: path
name: organisation_id
schema:
type: string
format: uuid
description: A UUID string identifying this organisation.
required: true
tags:
- Application Admin - Organisations
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedOrganisation'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedOrganisation'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedOrganisation'
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Organisation'
description: ''
delete:
operationId: api_v1_admin_organisations_destroy
description: |
**Description**
Soft delete a specific Organisation.
**Roles**
- Application Administrator
summary: Soft delete an Organisation [Application Admin].
parameters:
- in: path
name: organisation_id
schema:
type: string
format: uuid
description: A UUID string identifying this organisation.
required: true
tags:
- Application Admin - Organisations
security:
- tokenAuth: []
- cookieAuth: []
responses:
'204':
description: No response body
/api/v1/admin/physical-link-types/:
get:
operationId: api_v1_admin_physical_link_types_list
description: |
**Description**
This endpoint is used to retrieve all Physical Link Types.
**Roles**
- Application Administrator
summary: List all Physical Link Types. [Application Admin]
parameters:
- in: query
name: includeInactive
schema:
type: boolean
description: Returns also inactive types if set to true. Default value is
false.
- in: query
name: isVHCNCapable
schema:
type: boolean
description: Set to true if you want to retrieve only equipment that are VHCN
capable.
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: name.'
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: name.'
tags:
- Application Admin - Physical Link Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/PhysicalLinkType'
description: ''
post:
operationId: api_v1_admin_physical_link_types_create
description: |
**Description**
Create a new Physical Link Type.
**Roles**
- Application Administrator
summary: Create a new Physical Link Type. [Application Admin]
tags:
- Application Admin - Physical Link Types
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PhysicalLinkType'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PhysicalLinkType'
multipart/form-data:
schema:
$ref: '#/components/schemas/PhysicalLinkType'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/PhysicalLinkType'
description: ''
/api/v1/admin/physical-link-types/{physical_link_type_id}/:
get:
operationId: api_v1_admin_physical_link_types_retrieve
description: |
**Description**
This endpoint allows you to retrieve a Physical Link Type by its ID.
**Roles**
- Application Administrator
summary: Get a Physical Link Type by ID. [Application Admin]
parameters:
- in: path
name: physical_link_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this physical link type.
required: true
tags:
- Application Admin - Physical Link Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PhysicalLinkType'
description: ''
put:
operationId: api_v1_admin_physical_link_types_update
description: |
**Description**
This endpoint allows you to update an existing Physical Link Type.
**Roles**
- Application Administrator
summary: Update a Physical Link Type by ID. [Application Admin]
parameters:
- in: path
name: physical_link_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this physical link type.
required: true
tags:
- Application Admin - Physical Link Types
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PhysicalLinkType'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PhysicalLinkType'
multipart/form-data:
schema:
$ref: '#/components/schemas/PhysicalLinkType'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PhysicalLinkType'
description: ''
patch:
operationId: api_v1_admin_physical_link_types_partial_update
description: |
**Description**
This endpoint allows you to update an existing Physical Link Type partially, by only sending the parameters you want to update.
**Roles**
- Application Administrator
summary: Partially update a Physical Link Type by ID. [Application Admin]
parameters:
- in: path
name: physical_link_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this physical link type.
required: true
tags:
- Application Admin - Physical Link Types
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedPhysicalLinkType'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedPhysicalLinkType'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedPhysicalLinkType'
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PhysicalLinkType'
description: ''
delete:
operationId: api_v1_admin_physical_link_types_destroy
description: |
**Description**
Soft delete a specific Physical Link Type.
**Roles**
- Application Administrator
summary: Soft delete a Physical Link Type [Application Admin].
parameters:
- in: path
name: physical_link_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this physical link type.
required: true
tags:
- Application Admin - Physical Link Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'204':
description: No response body
/api/v1/admin/physical-links/:
get:
operationId: api_v1_admin_physical_links_list
description: |
**Description**
This endpoint can be used to retrieve all Phyiscal Links. You can filter the Links using the different filters described below
**Roles**
- Application Administrator
- Organisation Administrator
summary: List all Physical Links. [Application Admin - Organisation Admin]
parameters:
- in: query
name: all
schema:
type: boolean
description: Should return all links independent on status and version.
- in: query
name: blockId
schema:
type: string
description: Block ID filter. (Exact matches)
- in: query
name: destinationEquipmentId
schema:
type: string
description: The ID of the destination equipment. (Exact matches)
- in: query
name: destinationUnitId
schema:
type: string
description: The ID of the destination unit. (Exact matches)
- in: query
name: includePending
schema:
type: boolean
description: Returns the latest version of links that independent if they
are already validated or still pending validation.
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: physical_link_type__name, version.'
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- name: pageSize
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: physicalLinkType
schema:
type: string
description: Type of phyiscal link filter. (Exact matches)
- in: query
name: siteId
schema:
type: string
description: Site ID filter. (Exact matches)
- in: query
name: sourceEquipmentId
schema:
type: string
description: The ID of the source equipment. (Exact matches)
- in: query
name: unitId
schema:
type: string
description: Unit ID filter. (Exact matches)
- in: query
name: version
schema:
type: integer
description: The specific physical link version you want to retrieve. (Exact
matches)
tags:
- Admin - Physical Links
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedPhysicalLinkAdminList'
description: ''
/api/v1/admin/physical-links/{physical_link_id}/:
get:
operationId: api_v1_admin_physical_links_retrieve
description: |+
**Description**
This endpoint allows you to retrieve a Physical Link by its UUID.
**Roles**
- Application Administrator
- Organisation Administrator
**Limits**
The API is paginated and Organisation Administrators have access to a limited number of results.
summary: Get a Physical Link by UUID. [Application Admin - Organisation Admin]
parameters:
- in: path
name: physical_link_id
schema:
type: string
format: uuid
description: A UUID string identifying this physical link.
required: true
tags:
- Admin - Physical Links
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PhysicalLinkAdmin'
description: ''
/api/v1/admin/physical-links/{physical_link_id}/reset-approval/:
post:
operationId: api_v1_admin_physical_links_reset_approval_create
description: |
**Description**
Removes the rejection and approval flags from a physical link.
**Roles**
- Application Administrator
- Organisation Administrator
summary: Removes the rejection and approval flags from a physical link. [Application
Admin - Organisation Admin]
parameters:
- in: path
name: physical_link_id
schema:
type: string
format: uuid
description: A UUID string identifying this physical link.
required: true
tags:
- Admin - Physical Links
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PhysicalLinkAdmin'
description: ''
'400':
description: Physical link is not approved/rejected.
'404':
description: Physical link not found.
/api/v1/admin/roles/:
get:
operationId: api_v1_admin_roles_list
description: |
**Description**
This endpoint is used to retrieve all Roles supported by the system.
**Roles**
- Application Administrator
- Organisation Administrator
summary: List all Roles supported by the system. [Application Admin / Organisation
Admin]
parameters:
- in: query
name: isAssignableByOrganisationAdmin
schema:
type: boolean
description: Set to true if you want to retrieve only roles that can be assigned
by organisation admins.
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: role_name.'
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: role_name.'
tags:
- Admin - Roles
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Role'
description: ''
/api/v1/admin/roles/{role_id}/:
get:
operationId: api_v1_admin_roles_retrieve
description: |
**Description**
This endpoint allows you to retrieve a role by its ID.
**Roles**
- Application Administrator
- Organisation Administrator
summary: Get a Role by ID. [Application Admin / Organisation Admin]
parameters:
- in: path
name: role_id
schema:
type: string
format: uuid
description: A UUID string identifying this role.
required: true
tags:
- Admin - Roles
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Role'
description: ''
patch:
operationId: api_v1_admin_roles_partial_update
description: |
**Description**
This endpoint allows you to update an existing API User partially, by only sending the parameters you want to update.
**Roles**
- Application Administrator
summary: Partially update an API User by ID. [Application Admin]
parameters:
- in: path
name: role_id
schema:
type: string
format: uuid
description: A UUID string identifying this role.
required: true
tags:
- Admin - Roles
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedRole'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedRole'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedRole'
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Role'
description: ''
/api/v1/admin/site-types/:
get:
operationId: api_v1_admin_site_types_list
description: |
**Description**
This endpoint is used to retrieve all Site Types.
**Roles**
- Application Administrator
summary: List all Site Types. [Application Admin]
parameters:
- in: query
name: includeInactive
schema:
type: boolean
description: Returns also inactive types if set to true. Default value is
false.
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: name.'
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: name.'
tags:
- Application Admin - Site Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/SiteType'
description: ''
post:
operationId: api_v1_admin_site_types_create
description: |
**Description**
Create a new Site Type.
**Roles**
- Application Administrator
summary: Create a new Site Type. [Application Admin]
tags:
- Application Admin - Site Types
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SiteType'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/SiteType'
multipart/form-data:
schema:
$ref: '#/components/schemas/SiteType'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/SiteType'
description: ''
/api/v1/admin/site-types/{site_type_id}/:
get:
operationId: api_v1_admin_site_types_retrieve
description: |
**Description**
This endpoint allows you to retrieve a Site Type by its ID.
**Roles**
- Application Administrator
summary: Get a Site Type by ID. [Application Admin]
parameters:
- in: path
name: site_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this site type.
required: true
tags:
- Application Admin - Site Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/SiteType'
description: ''
put:
operationId: api_v1_admin_site_types_update
description: |
**Description**
This endpoint allows you to update an existing Site Type.
**Roles**
- Application Administrator
summary: Update a Site Type by ID. [Application Admin]
parameters:
- in: path
name: site_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this site type.
required: true
tags:
- Application Admin - Site Types
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SiteType'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/SiteType'
multipart/form-data:
schema:
$ref: '#/components/schemas/SiteType'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/SiteType'
description: ''
patch:
operationId: api_v1_admin_site_types_partial_update
description: |
**Description**
This endpoint allows you to update an existing Site Type partially, by only sending the parameters you want to update.
**Roles**
- Application Administrator
summary: Partially update a Site Type by ID. [Application Admin]
parameters:
- in: path
name: site_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this site type.
required: true
tags:
- Application Admin - Site Types
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedSiteType'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedSiteType'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedSiteType'
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/SiteType'
description: ''
delete:
operationId: api_v1_admin_site_types_destroy
description: |
**Description**
Soft delete a specific Site Type.
**Roles**
- Application Administrator
summary: Soft delete a Site Type [Application Admin].
parameters:
- in: path
name: site_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this site type.
required: true
tags:
- Application Admin - Site Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'204':
description: No response body
/api/v1/admin/sites/:
get:
operationId: api_v1_admin_sites_list
description: |
**Description**
This endpoint can be used to retrieve all Sites. You can filter the Sites using the different filters described below.
**Roles**
- Application Administrator
- Organisation Administrator
summary: List all Sites. [Application Admin - Organisation Admin]
parameters:
- in: query
name: country
schema:
type: string
description: Country filter. (Exact case insensitive matches)
- in: query
name: houseNumber
schema:
type: integer
description: House Number filter. (Exact case insensitive matches)
- in: query
name: houseNumberExtension
schema:
type: string
description: House Number Extension filter. (Exact case insensitive matches)
- in: query
name: includeDeleted
schema:
type: boolean
description: Returns also deleted Sites if set to true. Default value is false.
- in: query
name: latitude
schema:
type: number
format: float
description: Latitude (Exact match)
- in: query
name: locality
schema:
type: string
description: Locality filter. (Exact case insensitive matches)
- in: query
name: longitude
schema:
type: number
format: float
description: Longitude (Exact match)
- in: query
name: municipality
schema:
type: string
description: Municipality filter. (Exact case insensitive matches)
- in: query
name: name
schema:
type: string
description: Site Name filter. (Exact case insensitive matches)
- in: query
name: ntpOwnerEquipmentId
schema:
type: string
description: NTP Owner ID (a.k.a. the ID that identifies the Operator and
not the equipment). (Exact matches)
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: name.'
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- name: pageSize
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: postalCode
schema:
type: string
description: Postal Code filter. (Exact case insensitive matches)
- in: query
name: rnblId
schema:
type: string
description: Future ID of the RNBL. (Exact matches)
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: name, full_address.'
- in: query
name: sgglId
schema:
type: string
description: External ID “Post database”. (Exact matches)
- in: query
name: street
schema:
type: string
description: Street Name filter. (Exact case insensitive matches)
tags:
- Admin - Sites
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedSiteAdminList'
description: ''
/api/v1/admin/sites/{site_id}/:
get:
operationId: api_v1_admin_sites_retrieve
description: |+
**Description**
This endpoint allows you to retrieve a Site by its UUID.
**Roles**
- Application Administrator
- Organisation Administrator
**Limits**
The API is paginated and Organisation Administrators have access to a limited number of results.
summary: Get a Site by UUID. [Application Admin - Organisation Admin]
parameters:
- in: path
name: site_id
schema:
type: string
format: uuid
description: A UUID string identifying this site.
required: true
tags:
- Admin - Sites
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/SiteAdmin'
description: ''
/api/v1/admin/sites/{site_id}/restore/:
post:
operationId: api_v1_admin_sites_restore_create
description: |
**Description**
Restores a soft-deleted site.
**Roles**
- Application Administrator
- Organisation Administrator
summary: Restores a soft-deleted site. [Application Admin - Organisation Admin]
parameters:
- in: path
name: site_id
schema:
type: string
format: uuid
description: A UUID string identifying this site.
required: true
tags:
- Admin - Sites
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/SiteAdmin'
description: ''
'400':
description: Site is not deleted.
'404':
description: Site not found.
/api/v1/admin/tokens/:
get:
operationId: api_v1_admin_tokens_list
description: |
**Description**
Retrieve a list of authentication tokens.
**Response Body**
- Does NOT include the token value. Only returns: userId (UUID), created (datetime).
**Roles**
- Application Administrator
- Organisation Administrator
**Notes**
- Organisation Administrators will only see: their own tokens, tokens of users in their organisation, and never tokens assigned to Application Administrators.
summary: List all Proxy Tokens. [Application Admin / Organisation Admin]
parameters:
- in: query
name: organisationId
schema:
type: string
description: Organisation ID filter. (Exact matches)
tags:
- Admin - Tokens
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/TokenRead'
description: ''
post:
operationId: api_v1_admin_tokens_create
description: |
**Description**
Create a new authentication token for an API User.
**Response Body**
- Returns the created token including its token value (key), along with userId and created.
**Roles**
- Application Administrator
- Organisation Administrator
**Notes**
- Organisation Administrators can only create tokens for users within their own organisation and not for users who are Application Administrators.
summary: Create a new Proxy Token. [Application Admin / Organisation Admin]
tags:
- Admin - Tokens
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Token'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Token'
multipart/form-data:
schema:
$ref: '#/components/schemas/Token'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/Token'
description: ''
'400':
description: A token already exists for this user.
'403':
description: User not in organisation admin's organisation.
/api/v1/admin/tokens/{user_id}/:
get:
operationId: api_v1_admin_tokens_retrieve
description: |
**Description**
Retrieve a token by its ID.
**Path Parameter**
- user_id (path): The UUID of the user whose token is being retrieved.
**Response Body**
- Does NOT include the token value. Only returns: userId (UUID), created (datetime).
**Roles**
- Application Administrator
- Organisation Administrator
summary: Get a Proxy Token by ID. [Application Admin / Organisation Admin]
parameters:
- in: path
name: user_id
schema:
type: string
format: uuid
description: UUID of the user (path parameter).
required: true
tags:
- Admin - Tokens
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/TokenRead'
description: ''
delete:
operationId: api_v1_admin_tokens_destroy
description: |
**Description**
Delete a user's authentication token by providing the user_id in the path.
**Path Parameter**
- user_id (path): The UUID of the user whose token should be deleted. Do NOT pass the token value (key).
**Roles**
- Application Administrator
- Organisation Administrator
**Notes**
- Organisation Administrators can only delete tokens for users in their organisation and never for Application Administrators.
summary: Delete a Proxy Token by User ID. [Application Admin / Organisation
Admin]
parameters:
- in: path
name: user_id
schema:
type: string
format: uuid
description: UUID of the user (path parameter).
required: true
tags:
- Admin - Tokens
security:
- tokenAuth: []
- cookieAuth: []
responses:
'204':
description: No response body
/api/v1/admin/unit-types/:
get:
operationId: api_v1_admin_unit_types_list
description: |
**Description**
This endpoint is used to retrieve all Unit Types.
**Roles**
- Application Administrator
summary: List all Unit Types. [Application Admin]
parameters:
- in: query
name: includeInactive
schema:
type: boolean
description: Returns also inactive types if set to true. Default value is
false.
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: name.'
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: name.'
tags:
- Application Admin - Unit Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/UnitType'
description: ''
post:
operationId: api_v1_admin_unit_types_create
description: |
**Description**
Create a new Unit Type.
**Roles**
- Application Administrator
summary: Create a new Unit Type. [Application Admin]
tags:
- Application Admin - Unit Types
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UnitType'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UnitType'
multipart/form-data:
schema:
$ref: '#/components/schemas/UnitType'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/UnitType'
description: ''
/api/v1/admin/unit-types/{unit_type_id}/:
get:
operationId: api_v1_admin_unit_types_retrieve
description: |
**Description**
This endpoint allows you to retrieve a Unit Type by its ID.
**Roles**
- Application Administrator
summary: Get a Unit Type by ID. [Application Admin]
parameters:
- in: path
name: unit_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this unit type.
required: true
tags:
- Application Admin - Unit Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/UnitType'
description: ''
put:
operationId: api_v1_admin_unit_types_update
description: |
**Description**
This endpoint allows you to update an existing Unit Type.
**Roles**
- Application Administrator
summary: Update a Unit Type by ID. [Application Admin]
parameters:
- in: path
name: unit_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this unit type.
required: true
tags:
- Application Admin - Unit Types
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UnitType'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UnitType'
multipart/form-data:
schema:
$ref: '#/components/schemas/UnitType'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/UnitType'
description: ''
patch:
operationId: api_v1_admin_unit_types_partial_update
description: |
**Description**
This endpoint allows you to update an existing Unit Type partially, by only sending the parameters you want to update.
**Roles**
- Application Administrator
summary: Partially update a Unit Type by ID. [Application Admin]
parameters:
- in: path
name: unit_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this unit type.
required: true
tags:
- Application Admin - Unit Types
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedUnitType'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedUnitType'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedUnitType'
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/UnitType'
description: ''
delete:
operationId: api_v1_admin_unit_types_destroy
description: |
**Description**
Soft delete a specific Unit Type.
**Roles**
- Application Administrator
summary: Soft delete a Unit Type [Application Admin].
parameters:
- in: path
name: unit_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this unit type.
required: true
tags:
- Application Admin - Unit Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'204':
description: No response body
/api/v1/admin/units/:
get:
operationId: api_v1_admin_units_list
description: |
**Description**
This endpoint can be used to retrieve all Units. You can filter the Unity using the different filters described below.
**Roles**
- Application Administrator
- Organisation Administrator
summary: List all Units. [Application Admin - Organisation Admin]
parameters:
- in: query
name: blockId
schema:
type: string
description: Block ID filter. (Exact matches)
- in: query
name: floor
schema:
type: number
format: float
- in: query
name: includeDeleted
schema:
type: boolean
description: Returns also deleted Units if set to true. Default value is false.
- in: query
name: localUnitIdentifier
schema:
type: string
description: Local unit identifier (Ex. « Apt 1.1 ») filter. (Exact case insensitive
matches)
- in: query
name: ntpOwnerEquipmentId
schema:
type: string
description: NTP Owner ID (a.k.a. the ID that identifies the Operator and
not the equipment). (Exact matches)
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: local_unit_identifier, telecom_unit_identifier.'
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- name: pageSize
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: rnblId
schema:
type: string
description: Future ID of the RNBL. (Exact matches)
- in: query
name: search
schema:
type: string
description: The search query parameter can be used to search the Units by
their localUnitIdentifier or their telecomUnitIdentifier. The search will
return any Unit that contain the searched text any of these fields.
- in: query
name: sgglId
schema:
type: string
description: External ID “Post database”. (Exact matches)
- in: query
name: siteId
schema:
type: string
description: Site ID filter. (Exact matches)
- in: query
name: telecomUnitIdentifier
schema:
type: string
description: Telecom unit identifier (Ex. « 101 ») filter. (Exact case insensitive
matches)
- in: query
name: unitType
schema:
type: string
description: Type of unit filter. (Exact case insensitive matches)
tags:
- Admin - Units
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedUnitAdminList'
description: ''
/api/v1/admin/units/{unit_id}/:
get:
operationId: api_v1_admin_units_retrieve
description: |+
**Description**
This endpoint allows you to retrieve a Unit by its UUID.
**Roles**
- Application Administrator
- Organisation Administrator
**Limits**
The API is paginated and Organisation Administrators have access to a limited number of results.
summary: Get a Unit by UUID. [Application Admin - Organisation Admin]
parameters:
- in: path
name: unit_id
schema:
type: string
format: uuid
description: A UUID string identifying this unit.
required: true
tags:
- Admin - Units
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/UnitAdmin'
description: ''
/api/v1/admin/units/{unit_id}/restore/:
post:
operationId: api_v1_admin_units_restore_create
description: |
**Description**
Restores a soft-deleted unit.
**Roles**
- Application Administrator
- Organisation Administrator
summary: Restores a soft-deleted unit. [Application Admin - Organisation Admin]
parameters:
- in: path
name: unit_id
schema:
type: string
format: uuid
description: A UUID string identifying this unit.
required: true
tags:
- Admin - Units
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/UnitAdmin'
description: ''
'400':
description: Unit is not deleted.
'404':
description: Unit not found.
/api/v1/blocks/:
get:
operationId: api_v1_blocks_list
description: |+
**Description**
This endpoint is used to retrieve Blocks that comply with a given search or filter criteria. The number of results is limited.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
**Limits**
The API is paginated and users with roles others than ANALYST have access to a limited number of results.
summary: List all blocks. [Any]
parameters:
- in: query
name: country
schema:
type: string
description: Country filter. (Exact case insensitive matches)
- in: query
name: houseNumber
schema:
type: integer
description: House Number filter. (Exact case insensitive matches)
- in: query
name: houseNumberExtension
schema:
type: string
description: House Number Extension filter. (Exact case insensitive matches)
- in: query
name: includeDeleted
schema:
type: boolean
description: Returns also deleted Blocks if set to true. Default value is
false.
- in: query
name: latitude
schema:
type: number
format: float
description: Latitude (Exact match)
- in: query
name: locality
schema:
type: string
description: Locality filter. (Exact case insensitive matches)
- in: query
name: longitude
schema:
type: number
format: float
description: Longitude (Exact match)
- in: query
name: municipality
schema:
type: string
description: Municipality filter. (Exact case insensitive matches)
- in: query
name: name
schema:
type: string
description: Block Name filter. (Exact case insensitive matches)
- in: query
name: ntpOwnerEquipmentId
schema:
type: string
description: NTP Owner ID (a.k.a. the ID that identifies the Operator and
not the equipment). (Exact matches)
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: name.'
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- name: pageSize
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: postalCode
schema:
type: string
description: Postal Code filter. (Exact case insensitive matches)
- in: query
name: rnblId
schema:
type: string
description: Future ID of the RNBL. (Exact matches)
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: name, full_address
(block or site address).'
- in: query
name: sgglId
schema:
type: string
description: External ID “Post database”. (Exact matches)
- in: query
name: siteId
schema:
type: string
description: Site ID filter. (Exact matches)
- in: query
name: street
schema:
type: string
description: Street Name filter. (Exact case insensitive matches)
tags:
- Blocks
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedBlockList'
description: ''
post:
operationId: api_v1_blocks_create
description: |-
**Description**
Create a new block.
**Roles**
- Editor
summary: Create a new block. [Editor]
tags:
- Blocks
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Block'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Block'
multipart/form-data:
schema:
$ref: '#/components/schemas/Block'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/Block'
description: ''
/api/v1/blocks/{block_id}/:
get:
operationId: api_v1_blocks_retrieve
description: |-
**Description**
This endpoint allows you to retrieve a block by its UUID.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: Get a block by UUID. [Any]
parameters:
- in: path
name: block_id
schema:
type: string
format: uuid
description: A UUID string identifying this block.
required: true
tags:
- Blocks
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Block'
description: ''
put:
operationId: api_v1_blocks_update
description: |-
**Description**
This endpoint allows you to update an existing block. Updating images needs to be done via the dedicated endpoint block-images.
**Roles**
- Editor
summary: Update a block by UUID. [Editor]
parameters:
- in: path
name: block_id
schema:
type: string
format: uuid
description: A UUID string identifying this block.
required: true
tags:
- Blocks
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Block'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Block'
multipart/form-data:
schema:
$ref: '#/components/schemas/Block'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Block'
description: ''
patch:
operationId: api_v1_blocks_partial_update
description: |-
**Description**
This endpoint allows you to update an existing block partially, by only sending the parameters you want to update. Updating images needs to be done via the dedicated endpoint block-images.
**Roles**
- Editor
summary: Partially update a block by UUID. [Editor]
parameters:
- in: path
name: block_id
schema:
type: string
format: uuid
description: A UUID string identifying this block.
required: true
tags:
- Blocks
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedBlock'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedBlock'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedBlock'
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Block'
description: ''
delete:
operationId: api_v1_blocks_destroy
description: |-
**Description**
Delete a specific block. This will also delete all the associated images.
**Roles**
- Editor
summary: Delete a block. [Editor]
parameters:
- in: path
name: block_id
schema:
type: string
format: uuid
description: A UUID string identifying this block.
required: true
tags:
- Blocks
security:
- tokenAuth: []
- cookieAuth: []
responses:
'204':
description: No response body
/api/v1/blocks/{block_id}/addresses/:
post:
operationId: api_v1_blocks_addresses_create
description: |
**Description**
Add a new address to an existing block.
**Roles**
- Editor
summary: Add a new address to an existing block. [Editor]
parameters:
- in: path
name: block_id
schema:
type: string
format: uuid
description: A UUID string identifying this block.
required: true
tags:
- Blocks
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Address'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Address'
multipart/form-data:
schema:
$ref: '#/components/schemas/Address'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Address'
description: ''
'404':
description: 'Block not found. '
/api/v1/blocks/{block_id}/approve/:
post:
operationId: api_v1_blocks_approve_create
description: |
**Description**
Approve soft-delete of block.
**Roles**
- Organisation Approver
- Approver
summary: Approve soft-delete of block. [Organisation Approver / Approver]
parameters:
- in: path
name: block_id
schema:
type: string
format: uuid
description: A UUID string identifying this block.
required: true
tags:
- Blocks
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Block'
description: ''
'400':
description: Block is not marked for deletion.
'404':
description: 'Block not found. '
/api/v1/blocks/{block_id}/reject/:
post:
operationId: api_v1_blocks_reject_create
description: |
**Description**
Reject soft-delete of block.
**Roles**
- Organisation Approver
- Approver
summary: Reject soft-delete of block. [Organisation Approver / Approver]
parameters:
- in: path
name: block_id
schema:
type: string
format: uuid
description: A UUID string identifying this block.
required: true
tags:
- Blocks
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Block'
description: ''
'400':
description: Block is not marked for deletion.
'404':
description: 'Block not found. '
/api/v1/equipment-types/:
get:
operationId: api_v1_equipment_types_list
description: |-
**Description**
This endpoint is used to retrieve all Equipment Types available on the system.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: List all Equipment Types. [Any]
parameters:
- in: query
name: includeInactive
schema:
type: boolean
description: Returns also inactive types if set to true. Default value is
false.
- in: query
name: isBuildingAccessPoint
schema:
type: boolean
description: Set to true if you want to retrieve only building access points.
- in: query
name: isNTP
schema:
type: boolean
description: Set to true if you want to retrieve only NTP equipment.
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: name.'
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: name.'
tags:
- Equipment Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/EquipmentType'
description: ''
/api/v1/equipment-types/{equipment_type_id}/:
get:
operationId: api_v1_equipment_types_retrieve
description: |-
**Description**
This endpoint is used to retrieve an Equipment Type with a given id.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: Retrieve an Equipment Type by id. [Any]
parameters:
- in: path
name: equipment_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this equipment type.
required: true
tags:
- Equipment Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/EquipmentType'
description: ''
/api/v1/equipments/:
get:
operationId: api_v1_equipments_list
description: |+
**Description**
This endpoint is used to retrieve equipments that comply with a given search or filter criteria. The number of results is limited.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
**Limits**
The API is paginated and users with roles others than ANALYST have access to a limited number of results.
summary: List all equipments. [Any]
parameters:
- in: query
name: equipmentTypeId
schema:
type: string
description: Type of equipment filter. (Exact matches)
- in: query
name: includeDeleted
schema:
type: boolean
description: Returns also deleted Blocks if set to true. Default value is
false.
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: owner_equipment_id, owner__name, equipment_type__name.'
- in: query
name: ownerEquipmentId
schema:
type: string
description: Owner's equipment identifier filter. (Exact matches)
- in: query
name: ownerId
schema:
type: string
description: NTP Owner ID (a.k.a. the ID that identifies the Operator and
not the equipment). (Exact matches)
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- name: pageSize
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: owner_equipment_id.'
- in: query
name: unitId
schema:
type: string
description: Unit ID filter. (Exact matches)
tags:
- Equipments
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEquipmentList'
description: ''
post:
operationId: api_v1_equipments_create
description: |
**Description**
Create a new Equipment.
**Roles**
- Editor
summary: Create a new Equipment. [Editor]
tags:
- Equipments
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Equipment'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Equipment'
multipart/form-data:
schema:
$ref: '#/components/schemas/Equipment'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/Equipment'
description: ''
/api/v1/equipments/{equipment_id}/:
get:
operationId: api_v1_equipments_retrieve
description: |-
**Description**
This endpoint allows you to retrieve an equipment by its UUID.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: Get an equipment by UUID. [Any]
parameters:
- in: path
name: equipment_id
schema:
type: string
format: uuid
description: A UUID string identifying this equipment.
required: true
tags:
- Equipments
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Equipment'
description: ''
put:
operationId: api_v1_equipments_update
description: |
**Description**
This endpoint allows you to update an existing Equipment.
**Roles**
- Editor
summary: Update an Equipment by UUID. [Editor]
parameters:
- in: path
name: equipment_id
schema:
type: string
format: uuid
description: A UUID string identifying this equipment.
required: true
tags:
- Equipments
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Equipment'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Equipment'
multipart/form-data:
schema:
$ref: '#/components/schemas/Equipment'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Equipment'
description: ''
patch:
operationId: api_v1_equipments_partial_update
description: |
**Description**
This endpoint allows you to update an existing Equipment partially, by only sending the parameters you want to update.
**Roles**
- Editor
summary: Partially update an Equipment by UUID. [Editor]
parameters:
- in: path
name: equipment_id
schema:
type: string
format: uuid
description: A UUID string identifying this equipment.
required: true
tags:
- Equipments
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedEquipment'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedEquipment'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedEquipment'
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Equipment'
description: ''
delete:
operationId: api_v1_equipments_destroy
description: |
**Description**
Soft delete a specific Equipment.
**Roles**
- Editor
summary: Soft delete an Equipment [Editor].
parameters:
- in: path
name: equipment_id
schema:
type: string
format: uuid
description: A UUID string identifying this equipment.
required: true
tags:
- Equipments
security:
- tokenAuth: []
- cookieAuth: []
responses:
'204':
description: No response body
/api/v1/equipments/{equipment_id}/approve/:
post:
operationId: api_v1_equipments_approve_create
description: |
**Description**
Approve soft-delete of equipment.
**Roles**
- Organisation Approver
- Approver
summary: Approve soft-delete of equipment. [Organisation Approver / Approver]
parameters:
- in: path
name: equipment_id
schema:
type: string
format: uuid
description: A UUID string identifying this equipment.
required: true
tags:
- Equipments
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Equipment'
description: ''
'400':
description: Equipment is not marked for deletion.
'404':
description: Equipment not found.
/api/v1/equipments/{equipment_id}/reject/:
post:
operationId: api_v1_equipments_reject_create
description: |
**Description**
Reject soft-delete of equipment.
**Roles**
- Organisation Approver
- Approver
summary: Reject soft-delete of equipment. [Organisation Approver / Approver]
parameters:
- in: path
name: equipment_id
schema:
type: string
format: uuid
description: A UUID string identifying this equipment.
required: true
tags:
- Equipments
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Equipment'
description: ''
'400':
description: Equipment is not marked for deletion.
'404':
description: Equipment not found.
/api/v1/etl/addresses/:
get:
operationId: api_v1_etl_addresses_list
description: |+
**Description**
This endpoint is used to retrieve a list of addresses that comply with a given search criteria.
**Roles**
- ETL
**Limits**
The API is paginated.
summary: List all Addresses (search / filters required). [ETL]
parameters:
- in: query
name: country
schema:
type: string
description: Country filter. (Exact case insensitive matches)
- in: query
name: houseNumber
schema:
type: integer
description: House Number filter. (Exact case insensitive matches)
- in: query
name: houseNumberExtension
schema:
type: string
description: House Number Extension filter. (Exact case insensitive matches)
- in: query
name: includeDeleted
schema:
type: boolean
description: Returns also deleted addresses if set to true. Default value
is false.
- in: query
name: latitude
schema:
type: number
format: float
description: Latitude (Exact match)
- in: query
name: locality
schema:
type: string
description: Locality filter. (Exact case insensitive matches)
- in: query
name: longitude
schema:
type: number
format: float
description: Longitude (Exact match)
- in: query
name: mengplazId
schema:
type: string
description: Mengplaz ID. (Exact matches)
- in: query
name: municipality
schema:
type: string
description: Municipality filter. (Exact case insensitive matches)
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: postal_code, locality, municipality, country,
street, street_alternative.'
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- name: pageSize
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: postalCode
schema:
type: string
description: Postal Code filter. (Exact case insensitive matches)
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: full address string.'
- in: query
name: sgglId
schema:
type: string
description: External ID “Post database”. (Exact matches)
- in: query
name: street
schema:
type: string
description: Street Name filter. (Exact case insensitive matches)
tags:
- ETL - Addresses
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedAddressETLList'
description: ''
post:
operationId: api_v1_etl_addresses_create
description: |-
**Description**
This endpoint is used by the ETL process to create a new address.
**Roles**
- ETL
summary: Create a new Addresses. [ETL]
tags:
- ETL - Addresses
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AddressETL'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/AddressETL'
multipart/form-data:
schema:
$ref: '#/components/schemas/AddressETL'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/AddressETL'
description: ''
/api/v1/etl/addresses/{address_id}/:
get:
operationId: api_v1_etl_addresses_retrieve
description: |-
**Description**
This endpoint is used to retrieve an address with a given id.
**Roles**
- ETL
summary: Retrieve an Addresses by id. [ETL]
parameters:
- in: path
name: address_id
schema:
type: string
format: uuid
description: A UUID string identifying this address.
required: true
tags:
- ETL - Addresses
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AddressETL'
description: ''
put:
operationId: api_v1_etl_addresses_update
description: |-
**Description**
This endpoint is used by the ETL process to update an existing address.
**Roles**
- ETL
summary: Update an new Addresses by uuid. [ETL]
parameters:
- in: path
name: address_id
schema:
type: string
format: uuid
description: A UUID string identifying this address.
required: true
tags:
- ETL - Addresses
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AddressETL'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/AddressETL'
multipart/form-data:
schema:
$ref: '#/components/schemas/AddressETL'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AddressETL'
description: ''
patch:
operationId: api_v1_etl_addresses_partial_update
description: |-
**Description**
This endpoint is used by the ETL process to partially update an existing address.
**Roles**
- ETL
summary: Partially update an new Addresses by uuid. [ETL]
parameters:
- in: path
name: address_id
schema:
type: string
format: uuid
description: A UUID string identifying this address.
required: true
tags:
- ETL - Addresses
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedAddressETL'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedAddressETL'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedAddressETL'
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AddressETL'
description: ''
delete:
operationId: api_v1_etl_addresses_destroy
description: |-
**Description**
This endpoint is used by the ETL process to soft-delete an existing address.
**Roles**
- ETL
summary: Delete an existing Addresses by uuid. [ETL]
parameters:
- in: path
name: address_id
schema:
type: string
format: uuid
description: A UUID string identifying this address.
required: true
tags:
- ETL - Addresses
security:
- tokenAuth: []
- cookieAuth: []
responses:
'204':
description: No response body
/api/v1/organisation-types/:
get:
operationId: api_v1_organisation_types_list
description: |+
**Description**
Retrieve Organisation Types that are marked as Building Managers.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: List Organisation Types (Building Managers only). [Any]
parameters:
- in: query
name: includeInactive
schema:
type: boolean
description: Returns also inactive Organisation Types if set to true. Default
value is false.
- in: query
name: ordering
schema:
type: string
description: 'Sets ordering. Use `-` to reverse. Allowed values: name.'
- in: query
name: search
schema:
type: string
description: 'Case-insensitive search on: name.'
tags:
- Organisation Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/OrganisationType'
description: ''
/api/v1/organisation-types/{organisation_type_id}/:
get:
operationId: api_v1_organisation_types_retrieve
description: |-
**Description**
Retrieve an Organisation Type by its ID (Building Managers only).
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: Get an Organisation Type by ID (Building Managers only). [Any]
parameters:
- in: path
name: organisation_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this organisation type.
required: true
tags:
- Organisation Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/OrganisationType'
description: ''
/api/v1/organisations/:
get:
operationId: api_v1_organisations_list
description: |+
**Description**
Retrieve Organisations that are Building Managers.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: List Organisations (Building Managers only). [Any]
parameters:
- in: query
name: includeInactive
schema:
type: boolean
description: Returns also inactive Organisations if set to true. Default value
is false.
- in: query
name: ordering
schema:
type: string
description: 'Sets ordering. Use `-` to reverse. Allowed values: name, email,
organisation_type__name.'
- in: query
name: organisationTypeId
schema:
type: string
description: Organisation type ID filter. (Exact matches)
- in: query
name: search
schema:
type: string
description: 'Case-insensitive search on: name, phone, email, organisation_type__name.'
tags:
- Organisations
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Organisation'
description: ''
post:
operationId: api_v1_organisations_create
description: |-
**Description**
Create a new Organisation.
**Roles**
- Editor
**Limits**
Only Organisation Types marked as Building Manager can be created via this endpoint.
summary: Create a new Organisation. [Editor]
tags:
- Organisations
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Organisation'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Organisation'
multipart/form-data:
schema:
$ref: '#/components/schemas/Organisation'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/Organisation'
description: ''
/api/v1/organisations/{organisation_id}/:
get:
operationId: api_v1_organisations_retrieve
description: |-
**Description**
Retrieve an Organisation by its ID (Building Managers only).
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: Get an Organisation by ID (Building Managers only). [Any]
parameters:
- in: path
name: organisation_id
schema:
type: string
format: uuid
description: A UUID string identifying this organisation.
required: true
tags:
- Organisations
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Organisation'
description: ''
put:
operationId: api_v1_organisations_update
description: |-
**Description**
Update an existing Organisation.
**Roles**
- Editor
**Limits**
Only Organisation Types marked as Building Manager are allowed.
summary: Update an Organisation by ID. [Editor]
parameters:
- in: path
name: organisation_id
schema:
type: string
format: uuid
description: A UUID string identifying this organisation.
required: true
tags:
- Organisations
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Organisation'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Organisation'
multipart/form-data:
schema:
$ref: '#/components/schemas/Organisation'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Organisation'
description: ''
patch:
operationId: api_v1_organisations_partial_update
description: |-
**Description**
Partially update an existing Organisation.
**Roles**
- Editor
**Limits**
Only Organisation Types marked as Building Manager are allowed.
summary: Partially update an Organisation by ID. [Editor]
parameters:
- in: path
name: organisation_id
schema:
type: string
format: uuid
description: A UUID string identifying this organisation.
required: true
tags:
- Organisations
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedOrganisation'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedOrganisation'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedOrganisation'
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Organisation'
description: ''
delete:
operationId: api_v1_organisations_destroy
description: |-
**Description**
Soft delete an Organisation. If there are related objects, the Organisation will be set inactive (soft delete), mirroring admin behavior.
**Roles**
- Editor
summary: Soft delete an Organisation. [Editor]
parameters:
- in: path
name: organisation_id
schema:
type: string
format: uuid
description: A UUID string identifying this organisation.
required: true
tags:
- Organisations
security:
- tokenAuth: []
- cookieAuth: []
responses:
'204':
description: No response body
/api/v1/physical-link-types/:
get:
operationId: api_v1_physical_link_types_list
description: |-
**Description**
This endpoint is used to retrieve all Physical Link Types available on the system.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: List all Physical Link Types. [Any]
parameters:
- in: query
name: includeInactive
schema:
type: boolean
description: Returns also inactive types if set to true. Default value is
false.
- in: query
name: isVHCNCapable
schema:
type: boolean
description: Set to true if you want to retrieve only equipment that are VHCN
capable.
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: name.'
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: name.'
tags:
- Physical Link Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/PhysicalLinkType'
description: ''
/api/v1/physical-link-types/{physical_link_type_id}/:
get:
operationId: api_v1_physical_link_types_retrieve
description: |-
**Description**
This endpoint is used to retrieve an Physical Link Type with a given id.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: Retrieve an Physical Link Type by id. [Any]
parameters:
- in: path
name: physical_link_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this physical link type.
required: true
tags:
- Physical Link Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PhysicalLinkType'
description: ''
/api/v1/physical-links/:
get:
operationId: api_v1_physical_links_list
description: |+
**Description**
This endpoint is used to retrieve physical links that comply with a given search or filter criteria.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
**Limits**
The API is paginated and users with roles others than ANALYST have access to a limited number of results.
summary: List all Physical Links. [Any]
parameters:
- in: query
name: all
schema:
type: boolean
description: Should return all links independent on status and version.
- in: query
name: blockId
schema:
type: string
description: Block ID filter. (Exact matches)
- in: query
name: destinationEquipmentId
schema:
type: string
description: The ID of the destination equipment. (Exact matches)
- in: query
name: destinationUnitId
schema:
type: string
description: The ID of the destination unit. (Exact matches)
- in: query
name: includePending
schema:
type: boolean
description: Returns the latest version of links that independent if they
are already validated or still pending validation.
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: physical_link_type__name, version.'
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- name: pageSize
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: physicalLinkType
schema:
type: string
description: Type of phyiscal link filter. (Exact matches)
- in: query
name: siteId
schema:
type: string
description: Site ID filter. (Exact matches)
- in: query
name: sourceEquipmentId
schema:
type: string
description: The ID of the source equipment. (Exact matches)
- in: query
name: unitId
schema:
type: string
description: Unit ID filter. (Exact matches)
- in: query
name: version
schema:
type: integer
description: The specific physical link version you want to retrieve. (Exact
matches)
tags:
- Physical Links
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedPhysicalLinkList'
description: ''
post:
operationId: api_v1_physical_links_create
description: |-
**Description**
Create a new Physical Link between two equipments.
**Roles**
- Editor
summary: Creat a new Physical Link [Editor].
tags:
- Physical Links
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PhysicalLink'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PhysicalLink'
multipart/form-data:
schema:
$ref: '#/components/schemas/PhysicalLink'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/PhysicalLink'
description: ''
/api/v1/physical-links/{physical_link_id}/:
get:
operationId: api_v1_physical_links_retrieve
description: |-
**Description**
This endpoint allows you to retrieve a Physical Link by its UUID.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: Get a PhysicalLink by UUID. [Any]
parameters:
- in: path
name: physical_link_id
schema:
type: string
format: uuid
description: A UUID string identifying this physical link.
required: true
tags:
- Physical Links
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PhysicalLink'
description: ''
put:
operationId: api_v1_physical_links_update
description: |
**Description**
Update a Physical Link using a full object replacement (`PUT`).
**Roles**
- Organisation Approver
- Approver
summary: Update a Physical Link. [Organisation Approver / Approver]
parameters:
- in: path
name: physical_link_id
schema:
type: string
format: uuid
description: A UUID string identifying this physical link.
required: true
tags:
- Physical Links
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PhysicalLink'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PhysicalLink'
multipart/form-data:
schema:
$ref: '#/components/schemas/PhysicalLink'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PhysicalLink'
description: ''
patch:
operationId: api_v1_physical_links_partial_update
description: |
**Description**
Update a Physical Link with partial data (`PATCH`).
**Roles**
- Organisation Approver
- Approver
summary: Partially update a Physical Link. [Organisation Approver / Approver]
parameters:
- in: path
name: physical_link_id
schema:
type: string
format: uuid
description: A UUID string identifying this physical link.
required: true
tags:
- Physical Links
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedPhysicalLink'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedPhysicalLink'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedPhysicalLink'
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PhysicalLink'
description: ''
/api/v1/physical-links/{physical_link_id}/approve/:
post:
operationId: api_v1_physical_links_approve_create
description: |
**Description**
Approve a Physical Link.
**Roles**
- Organisation Approver
- Approver
summary: Approve a Physical Link. [Organisation Approver / Approver]
parameters:
- in: path
name: physical_link_id
schema:
type: string
format: uuid
description: A UUID string identifying this physical link.
required: true
tags:
- Physical Links
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PhysicalLink'
description: ''
'400':
description: Physical Link is already approved/rejected.
'404':
description: Physical Link not found.
/api/v1/physical-links/{physical_link_id}/reject/:
post:
operationId: api_v1_physical_links_reject_create
description: |
**Description**
Reject a Physical Link.
**Roles**
- Organisation Approver
- Approver
summary: Reject a Physical Link [Organisation Approver / Approver]
parameters:
- in: path
name: physical_link_id
schema:
type: string
format: uuid
description: A UUID string identifying this physical link.
required: true
tags:
- Physical Links
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PhysicalLink'
description: ''
'400':
description: Physical Link is already approved/rejected.
'404':
description: Physical Link not found.
/api/v1/site-types/:
get:
operationId: api_v1_site_types_list
description: |-
**Description**
This endpoint is used to retrieve all Site Types available on the system.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: List all Site Types. [Any]
parameters:
- in: query
name: includeInactive
schema:
type: boolean
description: Returns also inactive types if set to true. Default value is
false.
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: name.'
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: name.'
tags:
- Site Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/SiteType'
description: ''
/api/v1/site-types/{site_type_id}/:
get:
operationId: api_v1_site_types_retrieve
description: |-
**Description**
This endpoint is used to retrieve a Site Type with a given id.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: Retrieve a Site Type by id. [Any]
parameters:
- in: path
name: site_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this site type.
required: true
tags:
- Site Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/SiteType'
description: ''
/api/v1/sites/:
get:
operationId: api_v1_sites_list
description: |+
**Description**
This endpoint is used to retrieve Sites that comply with a given search or filter criteria. The number of results is limited.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
**Limits**
The API is paginated and users with roles others than ANALYST have access to a limited number of results.
summary: List all Sites. [Any]
parameters:
- in: query
name: country
schema:
type: string
description: Country filter. (Exact case insensitive matches)
- in: query
name: houseNumber
schema:
type: integer
description: House Number filter. (Exact case insensitive matches)
- in: query
name: houseNumberExtension
schema:
type: string
description: House Number Extension filter. (Exact case insensitive matches)
- in: query
name: includeDeleted
schema:
type: boolean
description: Returns also deleted Sites if set to true. Default value is false.
- in: query
name: latitude
schema:
type: number
format: float
description: Latitude (Exact match)
- in: query
name: locality
schema:
type: string
description: Locality filter. (Exact case insensitive matches)
- in: query
name: longitude
schema:
type: number
format: float
description: Longitude (Exact match)
- in: query
name: municipality
schema:
type: string
description: Municipality filter. (Exact case insensitive matches)
- in: query
name: name
schema:
type: string
description: Site Name filter. (Exact case insensitive matches)
- in: query
name: ntpOwnerEquipmentId
schema:
type: string
description: NTP Owner ID (a.k.a. the ID that identifies the Operator and
not the equipment). (Exact matches)
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: name.'
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- name: pageSize
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: postalCode
schema:
type: string
description: Postal Code filter. (Exact case insensitive matches)
- in: query
name: rnblId
schema:
type: string
description: Future ID of the RNBL. (Exact matches)
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: name, full_address.'
- in: query
name: sgglId
schema:
type: string
description: External ID “Post database”. (Exact matches)
- in: query
name: street
schema:
type: string
description: Street Name filter. (Exact case insensitive matches)
tags:
- Sites
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedSiteList'
description: ''
post:
operationId: api_v1_sites_create
description: |-
**Description**
Create a new Site.
**Roles**
- Editor
summary: Create a new Site. [Editor]
tags:
- Sites
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Site'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Site'
multipart/form-data:
schema:
$ref: '#/components/schemas/Site'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/Site'
description: ''
/api/v1/sites/{site_id}/:
get:
operationId: api_v1_sites_retrieve
description: |-
**Description**
This endpoint is used to retrieve a Site by its UUID.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: Get a Site by UUID. [Any]
parameters:
- in: path
name: site_id
schema:
type: string
format: uuid
description: A UUID string identifying this site.
required: true
tags:
- Sites
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Site'
description: ''
put:
operationId: api_v1_sites_update
description: |-
**Description**
This endpoint is used to update an existing Site.
**Roles**
- Editor
summary: Update a Site by UUID. [Editor]
parameters:
- in: path
name: site_id
schema:
type: string
format: uuid
description: A UUID string identifying this site.
required: true
tags:
- Sites
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Site'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Site'
multipart/form-data:
schema:
$ref: '#/components/schemas/Site'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Site'
description: ''
patch:
operationId: api_v1_sites_partial_update
description: |-
**Description**
This endpoint is used to update an existing Site partially, by only sending the parameters that need to be updated.
**Roles**
- Editor
summary: Partially update a Site by UUID. [Editor]
parameters:
- in: path
name: site_id
schema:
type: string
format: uuid
description: A UUID string identifying this site.
required: true
tags:
- Sites
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedSite'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedSite'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedSite'
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Site'
description: ''
delete:
operationId: api_v1_sites_destroy
description: |-
**Description**
Request a soft delete of a Site.
**Roles**
- Editor
summary: Soft delete a Site. [Editor]
parameters:
- in: path
name: site_id
schema:
type: string
format: uuid
description: A UUID string identifying this site.
required: true
tags:
- Sites
security:
- tokenAuth: []
- cookieAuth: []
responses:
'204':
description: No response body
/api/v1/sites/{site_id}/approve/:
post:
operationId: api_v1_sites_approve_create
description: |-
**Description**
Approve soft-delete of site.
**Roles**
- Organisation Approver
- Approver
summary: Approve soft-delete of site. [Organisation Approver / Approver]
parameters:
- in: path
name: site_id
schema:
type: string
format: uuid
description: A UUID string identifying this site.
required: true
tags:
- Sites
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Site'
description: ''
'400':
description: Site is not marked for deletion.
'404':
description: Site not found.
/api/v1/sites/{site_id}/reject/:
post:
operationId: api_v1_sites_reject_create
description: |-
**Description**
Reject soft-delete of site.
- Organisation Approver
- Approver
summary: Reject soft-delete of site. [Organisation Approver / Approver]
parameters:
- in: path
name: site_id
schema:
type: string
format: uuid
description: A UUID string identifying this site.
required: true
tags:
- Sites
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Site'
description: ''
'400':
description: Site is not marked for deletion.
'404':
description: Site not found.
/api/v1/unit-types/:
get:
operationId: api_v1_unit_types_list
description: |-
**Description**
This endpoint is used to retrieve all Unit Types available on the system.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: List all Unit Types. [Any]
parameters:
- in: query
name: includeInactive
schema:
type: boolean
description: Returns also inactive types if set to true. Default value is
false.
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: name.'
- in: query
name: search
schema:
type: string
description: 'Return a list of elements matching the search term. The search
is case-insensitive and matches on following fields: name.'
tags:
- Unit Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/UnitType'
description: ''
/api/v1/unit-types/{unit_type_id}/:
get:
operationId: api_v1_unit_types_retrieve
description: |-
**Description**
This endpoint is used to retrieve a Unit Type with a given id.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: Retrieve a Unit Type by id. [Any]
parameters:
- in: path
name: unit_type_id
schema:
type: string
format: uuid
description: A UUID string identifying this unit type.
required: true
tags:
- Unit Types
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/UnitType'
description: ''
/api/v1/units/:
get:
operationId: api_v1_units_list
description: |+
**Description**
This endpoint is used to retrieve Units that comply with a given search or filter criteria. The number of results is limited.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
**Limits**
The API is paginated and users with roles others than ANALYST have access to a limited number of results.
summary: List all Units. [Any]
parameters:
- in: query
name: blockId
schema:
type: string
description: Block ID filter. (Exact matches)
- in: query
name: floor
schema:
type: number
format: float
- in: query
name: includeDeleted
schema:
type: boolean
description: Returns also deleted Units if set to true. Default value is false.
- in: query
name: localUnitIdentifier
schema:
type: string
description: Local unit identifier (Ex. « Apt 1.1 ») filter. (Exact case insensitive
matches)
- in: query
name: ntpOwnerEquipmentId
schema:
type: string
description: NTP Owner ID (a.k.a. the ID that identifies the Operator and
not the equipment). (Exact matches)
- in: query
name: ordering
schema:
type: string
description: 'Sets the ordering of the returned elements. Use `-` to reverse
the order. Allowed values: local_unit_identifier, telecom_unit_identifier.'
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- name: pageSize
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: rnblId
schema:
type: string
description: Future ID of the RNBL. (Exact matches)
- in: query
name: search
schema:
type: string
description: The search query parameter can be used to search the Units by
their localUnitIdentifier or their telecomUnitIdentifier. The search will
return any Unit that contain the searched text any of these fields.
- in: query
name: sgglId
schema:
type: string
description: External ID “Post database”. (Exact matches)
- in: query
name: siteId
schema:
type: string
description: Site ID filter. (Exact matches)
- in: query
name: telecomUnitIdentifier
schema:
type: string
description: Telecom unit identifier (Ex. « 101 ») filter. (Exact case insensitive
matches)
- in: query
name: unitType
schema:
type: string
description: Type of unit filter. (Exact case insensitive matches)
tags:
- Units
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedUnitList'
description: ''
post:
operationId: api_v1_units_create
description: |
**Description**
Create a new Unit and add it to a block.
**Roles**
- Editor
summary: Create a new Unit. [Editor]
tags:
- Units
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Unit'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Unit'
multipart/form-data:
schema:
$ref: '#/components/schemas/Unit'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/Unit'
description: ''
/api/v1/units/{unit_id}/:
get:
operationId: api_v1_units_retrieve
description: |-
**Description**
This endpoint allows you to retrieve a Unit by its UUID.
**Roles**
- EDITOR
- APPROVER
- ORGANISATION_APPROVER
- VIEWER
- ANALYST
summary: Get a Unit by UUID. [Any]
parameters:
- in: path
name: unit_id
schema:
type: string
format: uuid
description: A UUID string identifying this unit.
required: true
tags:
- Units
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Unit'
description: ''
put:
operationId: api_v1_units_update
description: |
**Description**
This endpoint allows you to update an existing Unit.
**Roles**
- Editor
summary: Update a Unit by UUID. [Editor]
parameters:
- in: path
name: unit_id
schema:
type: string
format: uuid
description: A UUID string identifying this unit.
required: true
tags:
- Units
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Unit'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Unit'
multipart/form-data:
schema:
$ref: '#/components/schemas/Unit'
required: true
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Unit'
description: ''
patch:
operationId: api_v1_units_partial_update
description: |
**Description**
This endpoint allows you to update an existing Unit partially, by only sending the parameters you want to update.
**Roles**
- Editor
summary: Partially update a Unit by UUID. [Editor]
parameters:
- in: path
name: unit_id
schema:
type: string
format: uuid
description: A UUID string identifying this unit.
required: true
tags:
- Units
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedUnit'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedUnit'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedUnit'
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Unit'
description: ''
delete:
operationId: api_v1_units_destroy
description: |
**Description**
Soft delete a specific Unit.
**Roles**
- Editor
summary: Soft delete a Unit. [Editor]
parameters:
- in: path
name: unit_id
schema:
type: string
format: uuid
description: A UUID string identifying this unit.
required: true
tags:
- Units
security:
- tokenAuth: []
- cookieAuth: []
responses:
'204':
description: No response body
/api/v1/units/{unit_id}/approve/:
post:
operationId: api_v1_units_approve_create
description: |
**Description**
Approve soft-delete of unit.
**Roles**
- Organisation Approver
- Approver
summary: Approve soft-delete of unit. [Organisation Approver / Approver]
parameters:
- in: path
name: unit_id
schema:
type: string
format: uuid
description: A UUID string identifying this unit.
required: true
tags:
- Units
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Unit'
description: ''
'400':
description: Unit is not marked for deletion.
'404':
description: Unit not found.
/api/v1/units/{unit_id}/reject/:
post:
operationId: api_v1_units_reject_create
description: |
**Description**
Reject soft-delete of unit.
**Roles**
- Organisation Approver
- Approver
summary: Reject soft-delete of unit. [Organisation Approver / Approver]
parameters:
- in: path
name: unit_id
schema:
type: string
format: uuid
description: A UUID string identifying this unit.
required: true
tags:
- Units
security:
- tokenAuth: []
- cookieAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Unit'
description: ''
'400':
description: Unit is not marked for deletion.
'404':
description: Unit not found.
components:
schemas:
APIUser:
type: object
properties:
organisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
organisationId:
type: string
format: uuid
writeOnly: true
nullable: true
roles:
type: array
items:
$ref: '#/components/schemas/RoleAssignmentWithRoleDetail'
readOnly: true
roleIds:
type: array
items:
type: string
format: uuid
writeOnly: true
writeOnly: true
userId:
type: string
format: uuid
readOnly: true
isActive:
type: boolean
isDeleted:
type: boolean
readOnly: true
username:
type: string
inactiveAt:
type: string
format: date-time
readOnly: true
nullable: true
deletedAt:
type: string
format: date-time
readOnly: true
nullable: true
lastLogin:
type: string
format: date-time
readOnly: true
lastTokenUsage:
type: string
format: date-time
readOnly: true
dateJoined:
type: string
format: date-time
readOnly: true
required:
- dateJoined
- deletedAt
- inactiveAt
- isActive
- isDeleted
- lastLogin
- lastTokenUsage
- organisation
- roleIds
- roles
- userId
- username
AccessControlProcedureType:
type: object
properties:
accessControlProcedureTypeId:
type: string
format: uuid
readOnly: true
isActive:
type: boolean
name:
type: string
required:
- accessControlProcedureTypeId
- isActive
- name
Address:
type: object
properties:
addressId:
type: string
format: uuid
readOnly: true
sgglId:
type: string
nullable: true
mengplazId:
type: string
nullable: true
houseNumber:
type: integer
nullable: true
houseNumberExtension:
type: string
nullable: true
street:
type: string
streetAlternative:
type: string
nullable: true
postalCode:
type: integer
locality:
type: string
municipality:
type: string
country:
type: string
longitude:
type: number
format: double
nullable: true
latitude:
type: number
format: double
nullable: true
isValidated:
type: boolean
readOnly: true
isDeleted:
type: boolean
readOnly: true
full_alternate_address:
type: string
created_at:
type: string
format: date-time
readOnly: true
required:
- addressId
- country
- created_at
- isDeleted
- isValidated
- locality
- municipality
- postalCode
- street
AddressAdmin:
type: object
properties:
addressId:
type: string
format: uuid
readOnly: true
sgglId:
type: string
nullable: true
mengplazId:
type: string
nullable: true
houseNumber:
type: integer
nullable: true
houseNumberExtension:
type: string
nullable: true
street:
type: string
streetAlternative:
type: string
nullable: true
postalCode:
type: integer
locality:
type: string
municipality:
type: string
country:
type: string
longitude:
type: number
format: double
nullable: true
latitude:
type: number
format: double
nullable: true
isValidated:
type: boolean
isDeleted:
type: boolean
deletionValidatedAt:
type: string
format: date-time
readOnly: true
nullable: true
deletionValidatedByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
deletionValidatedByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
full_alternate_address:
type: string
created_at:
type: string
format: date-time
readOnly: true
required:
- addressId
- country
- created_at
- deletionValidatedAt
- deletionValidatedByOrganisation
- deletionValidatedByUser
- isDeleted
- isValidated
- locality
- municipality
- postalCode
- street
AddressETL:
type: object
properties:
addressId:
type: string
format: uuid
readOnly: true
sgglId:
type: string
nullable: true
mengplazId:
type: string
nullable: true
houseNumber:
type: integer
nullable: true
houseNumberExtension:
type: string
nullable: true
street:
type: string
streetAlternative:
type: string
nullable: true
postalCode:
type: integer
locality:
type: string
municipality:
type: string
country:
type: string
longitude:
type: number
format: double
nullable: true
latitude:
type: number
format: double
nullable: true
isValidated:
type: boolean
isDeleted:
type: boolean
full_alternate_address:
type: string
created_at:
type: string
format: date-time
readOnly: true
required:
- addressId
- country
- created_at
- isDeleted
- isValidated
- locality
- municipality
- postalCode
- street
AuditLog:
type: object
properties:
auditLogId:
type: string
format: uuid
readOnly: true
userId:
type: string
format: uuid
readOnly: true
organisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
requestBody:
type: string
entityName:
type: string
entityId:
type: string
format: uuid
nullable: true
requestMethod:
type: string
requestEndpoint:
type: string
ipAddress:
type: string
nullable: true
createdAt:
type: string
format: date-time
readOnly: true
response_status:
type: integer
maximum: 32767
minimum: 0
nullable: true
response_time_ms:
type: integer
maximum: 2147483647
minimum: -2147483648
nullable: true
response_body:
type: string
user:
type: string
format: uuid
nullable: true
required:
- auditLogId
- createdAt
- entityName
- organisation
- requestBody
- requestEndpoint
- requestMethod
- userId
Block:
type: object
properties:
blockId:
type: string
format: uuid
readOnly: true
siteId:
type: string
format: uuid
rnblId:
type: string
nullable: true
accessControlProcedureType:
allOf:
- $ref: '#/components/schemas/AccessControlProcedureType'
readOnly: true
description: Specific Access control procedure
accessControlProcedureTypeId:
type: string
format: uuid
writeOnly: true
nullable: true
description: Specific Access control procedure
constructionDate:
type: string
format: date-time
nullable: true
addresses:
type: array
items:
$ref: '#/components/schemas/Address'
readOnly: true
addressIds:
type: array
items:
type: string
format: uuid
writeOnly: true
contact:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
contactId:
type: string
format: uuid
writeOnly: true
nullable: true
isMarkedForDeletion:
type: boolean
isMarkedForDeletionAt:
type: string
format: date-time
readOnly: true
nullable: true
isMarkedForDeletionByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
isMarkedForDeletionByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
isDeleted:
type: boolean
deletionValidatedAt:
type: string
format: date-time
readOnly: true
nullable: true
deletionValidatedByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
deletionValidatedByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
name:
type: string
description: Name (Ex. “Bloc C”)
created_at:
type: string
format: date-time
readOnly: true
required:
- accessControlProcedureType
- addressIds
- addresses
- blockId
- contact
- created_at
- deletionValidatedAt
- deletionValidatedByOrganisation
- deletionValidatedByUser
- isMarkedForDeletionAt
- isMarkedForDeletionByOrganisation
- isMarkedForDeletionByUser
- name
- siteId
BlockAdmin:
type: object
properties:
blockId:
type: string
format: uuid
readOnly: true
siteId:
type: string
format: uuid
rnblId:
type: string
nullable: true
accessControlProcedureType:
allOf:
- $ref: '#/components/schemas/AccessControlProcedureType'
readOnly: true
description: Specific Access control procedure
accessControlProcedureTypeId:
type: string
format: uuid
writeOnly: true
description: Specific Access control procedure
constructionDate:
type: string
format: date-time
contact:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
contactId:
type: string
format: uuid
writeOnly: true
nullable: true
isMarkedForDeletion:
type: boolean
isMarkedForDeletionAt:
type: string
format: date-time
readOnly: true
nullable: true
isMarkedForDeletionByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
isMarkedForDeletionByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
isDeleted:
type: boolean
deletionValidatedAt:
type: string
format: date-time
readOnly: true
nullable: true
deletionValidatedByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
deletionValidatedByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
name:
type: string
description: Name (Ex. “Bloc C”)
created_at:
type: string
format: date-time
readOnly: true
required:
- accessControlProcedureType
- accessControlProcedureTypeId
- blockId
- constructionDate
- contact
- created_at
- deletionValidatedAt
- deletionValidatedByOrganisation
- deletionValidatedByUser
- isDeleted
- isMarkedForDeletion
- isMarkedForDeletionAt
- isMarkedForDeletionByOrganisation
- isMarkedForDeletionByUser
- name
- siteId
Equipment:
type: object
properties:
equipmentId:
type: string
format: uuid
readOnly: true
owner:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
ownerId:
type: string
format: uuid
writeOnly: true
ownerEquipmentId:
type: string
equipmentType:
allOf:
- $ref: '#/components/schemas/EquipmentType'
readOnly: true
equipmentTypeId:
type: string
format: uuid
writeOnly: true
unit:
allOf:
- $ref: '#/components/schemas/Unit'
readOnly: true
unitId:
type: string
format: uuid
writeOnly: true
isMarkedForDeletion:
type: boolean
isMarkedForDeletionAt:
type: string
format: date-time
readOnly: true
nullable: true
isMarkedForDeletionByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
isMarkedForDeletionByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
isDeleted:
type: boolean
deletionValidatedAt:
type: string
format: date-time
readOnly: true
nullable: true
deletionValidatedByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
deletionValidatedByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
created_at:
type: string
format: date-time
readOnly: true
required:
- created_at
- deletionValidatedAt
- deletionValidatedByOrganisation
- deletionValidatedByUser
- equipmentId
- equipmentType
- equipmentTypeId
- isMarkedForDeletionAt
- isMarkedForDeletionByOrganisation
- isMarkedForDeletionByUser
- owner
- unit
- unitId
EquipmentAdmin:
type: object
properties:
equipmentId:
type: string
format: uuid
readOnly: true
owner:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
ownerId:
type: string
format: uuid
writeOnly: true
ownerEquipmentId:
type: string
equipmentType:
allOf:
- $ref: '#/components/schemas/EquipmentType'
readOnly: true
equipmentTypeId:
type: string
format: uuid
writeOnly: true
unit:
allOf:
- $ref: '#/components/schemas/UnitAdmin'
readOnly: true
unitId:
type: string
format: uuid
writeOnly: true
isMarkedForDeletion:
type: boolean
isMarkedForDeletionAt:
type: string
format: date-time
readOnly: true
nullable: true
isMarkedForDeletionByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
isMarkedForDeletionByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
isDeleted:
type: boolean
deletionValidatedAt:
type: string
format: date-time
readOnly: true
nullable: true
deletionValidatedByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
deletionValidatedByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
created_at:
type: string
format: date-time
readOnly: true
required:
- created_at
- deletionValidatedAt
- deletionValidatedByOrganisation
- deletionValidatedByUser
- equipmentId
- equipmentType
- equipmentTypeId
- isDeleted
- isMarkedForDeletion
- isMarkedForDeletionAt
- isMarkedForDeletionByOrganisation
- isMarkedForDeletionByUser
- owner
- ownerEquipmentId
- ownerId
- unit
- unitId
EquipmentType:
type: object
properties:
equipmentTypeId:
type: string
format: uuid
readOnly: true
isNTP:
type: boolean
isBuildingAccessPoint:
type: boolean
isActive:
type: boolean
name:
type: string
required:
- equipmentTypeId
- isActive
- isBuildingAccessPoint
- isNTP
- name
Organisation:
type: object
properties:
organisationId:
type: string
format: uuid
readOnly: true
organisationType:
allOf:
- $ref: '#/components/schemas/OrganisationType'
readOnly: true
organisationTypeId:
type: string
format: uuid
writeOnly: true
isActive:
type: boolean
name:
type: string
phone:
type: string
email:
type: string
format: email
nullable: true
maxLength: 254
required:
- isActive
- name
- organisationId
- organisationType
- organisationTypeId
OrganisationType:
type: object
properties:
organisationTypeId:
type: string
format: uuid
readOnly: true
isEquipmentOwner:
type: boolean
isBuildingManager:
type: boolean
isActive:
type: boolean
name:
type: string
required:
- isActive
- isBuildingManager
- isEquipmentOwner
- name
- organisationTypeId
PaginatedAddressAdminList:
type: object
required:
- count
- results
properties:
count:
type: integer
example: 123
next:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=4
previous:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=2
results:
type: array
items:
$ref: '#/components/schemas/AddressAdmin'
PaginatedAddressETLList:
type: object
required:
- count
- results
properties:
count:
type: integer
example: 123
next:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=4
previous:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=2
results:
type: array
items:
$ref: '#/components/schemas/AddressETL'
PaginatedAddressList:
type: object
required:
- count
- results
properties:
count:
type: integer
example: 123
next:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=4
previous:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=2
results:
type: array
items:
$ref: '#/components/schemas/Address'
PaginatedAuditLogList:
type: object
required:
- count
- results
properties:
count:
type: integer
example: 123
next:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=4
previous:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=2
results:
type: array
items:
$ref: '#/components/schemas/AuditLog'
PaginatedBlockAdminList:
type: object
required:
- count
- results
properties:
count:
type: integer
example: 123
next:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=4
previous:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=2
results:
type: array
items:
$ref: '#/components/schemas/BlockAdmin'
PaginatedBlockList:
type: object
required:
- count
- results
properties:
count:
type: integer
example: 123
next:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=4
previous:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=2
results:
type: array
items:
$ref: '#/components/schemas/Block'
PaginatedEquipmentAdminList:
type: object
required:
- count
- results
properties:
count:
type: integer
example: 123
next:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=4
previous:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=2
results:
type: array
items:
$ref: '#/components/schemas/EquipmentAdmin'
PaginatedEquipmentList:
type: object
required:
- count
- results
properties:
count:
type: integer
example: 123
next:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=4
previous:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=2
results:
type: array
items:
$ref: '#/components/schemas/Equipment'
PaginatedPhysicalLinkAdminList:
type: object
required:
- count
- results
properties:
count:
type: integer
example: 123
next:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=4
previous:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=2
results:
type: array
items:
$ref: '#/components/schemas/PhysicalLinkAdmin'
PaginatedPhysicalLinkList:
type: object
required:
- count
- results
properties:
count:
type: integer
example: 123
next:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=4
previous:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=2
results:
type: array
items:
$ref: '#/components/schemas/PhysicalLink'
PaginatedSiteAdminList:
type: object
required:
- count
- results
properties:
count:
type: integer
example: 123
next:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=4
previous:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=2
results:
type: array
items:
$ref: '#/components/schemas/SiteAdmin'
PaginatedSiteList:
type: object
required:
- count
- results
properties:
count:
type: integer
example: 123
next:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=4
previous:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=2
results:
type: array
items:
$ref: '#/components/schemas/Site'
PaginatedUnitAdminList:
type: object
required:
- count
- results
properties:
count:
type: integer
example: 123
next:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=4
previous:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=2
results:
type: array
items:
$ref: '#/components/schemas/UnitAdmin'
PaginatedUnitList:
type: object
required:
- count
- results
properties:
count:
type: integer
example: 123
next:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=4
previous:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=2
results:
type: array
items:
$ref: '#/components/schemas/Unit'
PatchedAPIUser:
type: object
properties:
organisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
organisationId:
type: string
format: uuid
writeOnly: true
nullable: true
roles:
type: array
items:
$ref: '#/components/schemas/RoleAssignmentWithRoleDetail'
readOnly: true
roleIds:
type: array
items:
type: string
format: uuid
writeOnly: true
writeOnly: true
userId:
type: string
format: uuid
readOnly: true
isActive:
type: boolean
isDeleted:
type: boolean
readOnly: true
username:
type: string
inactiveAt:
type: string
format: date-time
readOnly: true
nullable: true
deletedAt:
type: string
format: date-time
readOnly: true
nullable: true
lastLogin:
type: string
format: date-time
readOnly: true
lastTokenUsage:
type: string
format: date-time
readOnly: true
dateJoined:
type: string
format: date-time
readOnly: true
PatchedAccessControlProcedureType:
type: object
properties:
accessControlProcedureTypeId:
type: string
format: uuid
readOnly: true
isActive:
type: boolean
name:
type: string
PatchedAddressAdmin:
type: object
properties:
addressId:
type: string
format: uuid
readOnly: true
sgglId:
type: string
nullable: true
mengplazId:
type: string
nullable: true
houseNumber:
type: integer
nullable: true
houseNumberExtension:
type: string
nullable: true
street:
type: string
streetAlternative:
type: string
nullable: true
postalCode:
type: integer
locality:
type: string
municipality:
type: string
country:
type: string
longitude:
type: number
format: double
nullable: true
latitude:
type: number
format: double
nullable: true
isValidated:
type: boolean
isDeleted:
type: boolean
deletionValidatedAt:
type: string
format: date-time
readOnly: true
nullable: true
deletionValidatedByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
deletionValidatedByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
full_alternate_address:
type: string
created_at:
type: string
format: date-time
readOnly: true
PatchedAddressETL:
type: object
properties:
addressId:
type: string
format: uuid
readOnly: true
sgglId:
type: string
nullable: true
mengplazId:
type: string
nullable: true
houseNumber:
type: integer
nullable: true
houseNumberExtension:
type: string
nullable: true
street:
type: string
streetAlternative:
type: string
nullable: true
postalCode:
type: integer
locality:
type: string
municipality:
type: string
country:
type: string
longitude:
type: number
format: double
nullable: true
latitude:
type: number
format: double
nullable: true
isValidated:
type: boolean
isDeleted:
type: boolean
full_alternate_address:
type: string
created_at:
type: string
format: date-time
readOnly: true
PatchedBlock:
type: object
properties:
blockId:
type: string
format: uuid
readOnly: true
siteId:
type: string
format: uuid
rnblId:
type: string
nullable: true
accessControlProcedureType:
allOf:
- $ref: '#/components/schemas/AccessControlProcedureType'
readOnly: true
description: Specific Access control procedure
accessControlProcedureTypeId:
type: string
format: uuid
writeOnly: true
nullable: true
description: Specific Access control procedure
constructionDate:
type: string
format: date-time
nullable: true
addresses:
type: array
items:
$ref: '#/components/schemas/Address'
readOnly: true
addressIds:
type: array
items:
type: string
format: uuid
writeOnly: true
contact:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
contactId:
type: string
format: uuid
writeOnly: true
nullable: true
isMarkedForDeletion:
type: boolean
isMarkedForDeletionAt:
type: string
format: date-time
readOnly: true
nullable: true
isMarkedForDeletionByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
isMarkedForDeletionByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
isDeleted:
type: boolean
deletionValidatedAt:
type: string
format: date-time
readOnly: true
nullable: true
deletionValidatedByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
deletionValidatedByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
name:
type: string
description: Name (Ex. “Bloc C”)
created_at:
type: string
format: date-time
readOnly: true
PatchedEquipment:
type: object
properties:
equipmentId:
type: string
format: uuid
readOnly: true
owner:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
ownerId:
type: string
format: uuid
writeOnly: true
ownerEquipmentId:
type: string
equipmentType:
allOf:
- $ref: '#/components/schemas/EquipmentType'
readOnly: true
equipmentTypeId:
type: string
format: uuid
writeOnly: true
unit:
allOf:
- $ref: '#/components/schemas/Unit'
readOnly: true
unitId:
type: string
format: uuid
writeOnly: true
isMarkedForDeletion:
type: boolean
isMarkedForDeletionAt:
type: string
format: date-time
readOnly: true
nullable: true
isMarkedForDeletionByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
isMarkedForDeletionByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
isDeleted:
type: boolean
deletionValidatedAt:
type: string
format: date-time
readOnly: true
nullable: true
deletionValidatedByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
deletionValidatedByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
created_at:
type: string
format: date-time
readOnly: true
PatchedEquipmentType:
type: object
properties:
equipmentTypeId:
type: string
format: uuid
readOnly: true
isNTP:
type: boolean
isBuildingAccessPoint:
type: boolean
isActive:
type: boolean
name:
type: string
PatchedOrganisation:
type: object
properties:
organisationId:
type: string
format: uuid
readOnly: true
organisationType:
allOf:
- $ref: '#/components/schemas/OrganisationType'
readOnly: true
organisationTypeId:
type: string
format: uuid
writeOnly: true
isActive:
type: boolean
name:
type: string
phone:
type: string
email:
type: string
format: email
nullable: true
maxLength: 254
PatchedOrganisationType:
type: object
properties:
organisationTypeId:
type: string
format: uuid
readOnly: true
isEquipmentOwner:
type: boolean
isBuildingManager:
type: boolean
isActive:
type: boolean
name:
type: string
PatchedPhysicalLink:
type: object
properties:
physicalLinkId:
type: string
format: uuid
readOnly: true
physicalLinkType:
allOf:
- $ref: '#/components/schemas/PhysicalLinkType'
readOnly: true
physicalLinkTypeId:
type: string
format: uuid
writeOnly: true
sourceEquipment:
allOf:
- $ref: '#/components/schemas/Equipment'
readOnly: true
sourceEquipmentId:
type: string
format: uuid
writeOnly: true
destinationEquipment:
allOf:
- $ref: '#/components/schemas/Equipment'
readOnly: true
destinationEquipmentId:
type: string
format: uuid
writeOnly: true
destinationUnit:
allOf:
- $ref: '#/components/schemas/Unit'
readOnly: true
destinationUnitId:
type: string
format: uuid
writeOnly: true
isSourceTerminated:
type: boolean
isDestinationTerminated:
type: boolean
isDeleted:
type: boolean
version:
type: integer
readOnly: true
lastVersion:
type: integer
readOnly: true
lastValidatedVersion:
type: integer
readOnly: true
installedAt:
type: string
format: date-time
nullable: true
createdAt:
type: string
format: date-time
readOnly: true
nullable: true
createdByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
createdByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
isValidated:
type: boolean
readOnly: true
isRejected:
type: boolean
readOnly: true
validatedAt:
type: string
format: date-time
readOnly: true
nullable: true
validatedByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
validatedByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
color:
type: string
pattern: ^#(?:[0-9a-fA-F]{3}){1,2}$
PatchedPhysicalLinkType:
type: object
properties:
physicalLinkTypeId:
type: string
format: uuid
readOnly: true
isVHCNCapable:
type: boolean
isActive:
type: boolean
name:
type: string
description: A name that identifies the type of wire (e.g. ETH CAT5E, ...)
PatchedRole:
type: object
properties:
roleId:
type: string
format: uuid
readOnly: true
roleName:
type: string
readOnly: true
isAssignableByOrganisationAdmin:
type: boolean
PatchedSite:
type: object
properties:
siteId:
type: string
format: uuid
readOnly: true
rnblId:
type: string
default: ''
siteType:
allOf:
- $ref: '#/components/schemas/SiteType'
readOnly: true
siteTypeId:
type: string
format: uuid
writeOnly: true
addresses:
type: array
items:
$ref: '#/components/schemas/Address'
readOnly: true
isMarkedForDeletion:
type: boolean
nullable: true
isMarkedForDeletionAt:
type: string
format: date-time
readOnly: true
nullable: true
isMarkedForDeletionByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
isMarkedForDeletionByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
isDeleted:
type: boolean
readOnly: true
nullable: true
deletionValidatedAt:
type: string
format: date-time
readOnly: true
nullable: true
deletionValidatedByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
deletionValidatedByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
suggestedNTPs:
type: array
items:
$ref: '#/components/schemas/SuggestedNTP'
readOnly: true
name:
type: string
created_at:
type: string
format: date-time
readOnly: true
PatchedSiteType:
type: object
properties:
siteTypeId:
type: string
format: uuid
readOnly: true
isActive:
type: boolean
name:
type: string
PatchedUnit:
type: object
properties:
unitId:
type: string
format: uuid
readOnly: true
blockId:
type: string
format: uuid
rnblId:
type: string
nullable: true
sgglId:
type: string
nullable: true
unitType:
allOf:
- $ref: '#/components/schemas/UnitType'
readOnly: true
unitTypeId:
type: string
format: uuid
writeOnly: true
localUnitIdentifier:
type: string
nullable: true
description: Local unit identifier (Ex. « Apt 1.1 »)
telecomUnitIdentifier:
type: string
description: Telecom unit identifier (Ex. « 101 »)
isMarkedForDeletion:
type: boolean
isMarkedForDeletionAt:
type: string
format: date-time
readOnly: true
nullable: true
isMarkedForDeletionByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
isMarkedForDeletionByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
isDeleted:
type: boolean
deletionValidatedAt:
type: string
format: date-time
readOnly: true
nullable: true
deletionValidatedByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
deletionValidatedByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
isVHCNCapable:
type: boolean
readOnly: true
isConnected:
type: boolean
readOnly: true
floor:
type: number
format: double
created_at:
type: string
format: date-time
readOnly: true
PatchedUnitType:
type: object
properties:
unitTypeId:
type: string
format: uuid
readOnly: true
isActive:
type: boolean
name:
type: string
PhysicalLink:
type: object
properties:
physicalLinkId:
type: string
format: uuid
readOnly: true
physicalLinkType:
allOf:
- $ref: '#/components/schemas/PhysicalLinkType'
readOnly: true
physicalLinkTypeId:
type: string
format: uuid
writeOnly: true
sourceEquipment:
allOf:
- $ref: '#/components/schemas/Equipment'
readOnly: true
sourceEquipmentId:
type: string
format: uuid
writeOnly: true
destinationEquipment:
allOf:
- $ref: '#/components/schemas/Equipment'
readOnly: true
destinationEquipmentId:
type: string
format: uuid
writeOnly: true
destinationUnit:
allOf:
- $ref: '#/components/schemas/Unit'
readOnly: true
destinationUnitId:
type: string
format: uuid
writeOnly: true
isSourceTerminated:
type: boolean
isDestinationTerminated:
type: boolean
isDeleted:
type: boolean
version:
type: integer
readOnly: true
lastVersion:
type: integer
readOnly: true
lastValidatedVersion:
type: integer
readOnly: true
installedAt:
type: string
format: date-time
nullable: true
createdAt:
type: string
format: date-time
readOnly: true
nullable: true
createdByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
createdByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
isValidated:
type: boolean
readOnly: true
isRejected:
type: boolean
readOnly: true
validatedAt:
type: string
format: date-time
readOnly: true
nullable: true
validatedByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
validatedByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
color:
type: string
pattern: ^#(?:[0-9a-fA-F]{3}){1,2}$
required:
- createdAt
- createdByOrganisation
- createdByUser
- destinationEquipment
- destinationUnit
- isRejected
- isValidated
- lastValidatedVersion
- lastVersion
- physicalLinkId
- physicalLinkType
- physicalLinkTypeId
- sourceEquipment
- sourceEquipmentId
- validatedAt
- validatedByOrganisation
- validatedByUser
- version
PhysicalLinkAdmin:
type: object
properties:
physicalLinkId:
type: string
format: uuid
readOnly: true
physicalLinkType:
allOf:
- $ref: '#/components/schemas/PhysicalLinkType'
readOnly: true
physicalLinkTypeId:
type: string
format: uuid
writeOnly: true
sourceEquipment:
allOf:
- $ref: '#/components/schemas/EquipmentAdmin'
readOnly: true
sourceEquipmentId:
type: string
format: uuid
writeOnly: true
destinationEquipment:
allOf:
- $ref: '#/components/schemas/EquipmentAdmin'
readOnly: true
destinationEquipmentId:
type: string
format: uuid
writeOnly: true
destinationUnit:
allOf:
- $ref: '#/components/schemas/Unit'
readOnly: true
destinationUnitId:
type: string
format: uuid
writeOnly: true
isSourceTerminated:
type: boolean
isDestinationTerminated:
type: boolean
isDeleted:
type: boolean
version:
type: integer
readOnly: true
lastVersion:
type: integer
readOnly: true
lastValidatedVersion:
type: integer
readOnly: true
installedAt:
type: string
format: date-time
nullable: true
createdAt:
type: string
format: date-time
nullable: true
createdByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
createdByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
isValidated:
type: boolean
isRejected:
type: boolean
validatedAt:
type: string
format: date-time
readOnly: true
nullable: true
validatedByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
validatedByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
color:
type: string
pattern: ^#(?:[0-9a-fA-F]{3}){1,2}$
required:
- createdByOrganisation
- createdByUser
- destinationEquipment
- destinationEquipmentId
- destinationUnit
- destinationUnitId
- isDeleted
- isDestinationTerminated
- isRejected
- isSourceTerminated
- isValidated
- lastValidatedVersion
- lastVersion
- physicalLinkId
- physicalLinkType
- physicalLinkTypeId
- sourceEquipment
- sourceEquipmentId
- validatedAt
- validatedByOrganisation
- validatedByUser
- version
PhysicalLinkType:
type: object
properties:
physicalLinkTypeId:
type: string
format: uuid
readOnly: true
isVHCNCapable:
type: boolean
isActive:
type: boolean
name:
type: string
description: A name that identifies the type of wire (e.g. ETH CAT5E, ...)
required:
- isActive
- isVHCNCapable
- name
- physicalLinkTypeId
Role:
type: object
properties:
roleId:
type: string
format: uuid
readOnly: true
roleName:
type: string
readOnly: true
isAssignableByOrganisationAdmin:
type: boolean
required:
- isAssignableByOrganisationAdmin
- roleId
- roleName
RoleAssignmentWithRoleDetail:
type: object
properties:
id:
type: integer
readOnly: true
role:
allOf:
- $ref: '#/components/schemas/Role'
readOnly: true
roleId:
type: string
format: uuid
writeOnly: true
required:
- id
- role
- roleId
Site:
type: object
properties:
siteId:
type: string
format: uuid
readOnly: true
rnblId:
type: string
default: ''
siteType:
allOf:
- $ref: '#/components/schemas/SiteType'
readOnly: true
siteTypeId:
type: string
format: uuid
writeOnly: true
addresses:
type: array
items:
$ref: '#/components/schemas/Address'
readOnly: true
isMarkedForDeletion:
type: boolean
nullable: true
isMarkedForDeletionAt:
type: string
format: date-time
readOnly: true
nullable: true
isMarkedForDeletionByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
isMarkedForDeletionByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
isDeleted:
type: boolean
readOnly: true
nullable: true
deletionValidatedAt:
type: string
format: date-time
readOnly: true
nullable: true
deletionValidatedByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
deletionValidatedByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
suggestedNTPs:
type: array
items:
$ref: '#/components/schemas/SuggestedNTP'
readOnly: true
name:
type: string
created_at:
type: string
format: date-time
readOnly: true
required:
- addresses
- created_at
- deletionValidatedAt
- deletionValidatedByOrganisation
- deletionValidatedByUser
- isDeleted
- isMarkedForDeletionAt
- isMarkedForDeletionByOrganisation
- isMarkedForDeletionByUser
- siteId
- siteType
- siteTypeId
- suggestedNTPs
SiteAdmin:
type: object
properties:
siteId:
type: string
format: uuid
readOnly: true
rnblId:
type: string
nullable: true
siteType:
allOf:
- $ref: '#/components/schemas/SiteType'
readOnly: true
siteTypeId:
type: string
format: uuid
writeOnly: true
isMarkedForDeletion:
type: boolean
isMarkedForDeletionAt:
type: string
format: date-time
readOnly: true
nullable: true
isMarkedForDeletionByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
isMarkedForDeletionByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
isDeleted:
type: boolean
deletionValidatedAt:
type: string
format: date-time
readOnly: true
nullable: true
deletionValidatedByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
deletionValidatedByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
suggestedNTPs:
type: array
items:
$ref: '#/components/schemas/SuggestedNTP'
readOnly: true
name:
type: string
created_at:
type: string
format: date-time
readOnly: true
site_type:
type: string
format: uuid
required:
- created_at
- deletionValidatedAt
- deletionValidatedByOrganisation
- deletionValidatedByUser
- isDeleted
- isMarkedForDeletion
- isMarkedForDeletionAt
- isMarkedForDeletionByOrganisation
- isMarkedForDeletionByUser
- siteId
- siteType
- siteTypeId
- site_type
- suggestedNTPs
SiteType:
type: object
properties:
siteTypeId:
type: string
format: uuid
readOnly: true
isActive:
type: boolean
name:
type: string
required:
- isActive
- name
- siteTypeId
SuggestedNTP:
type: object
properties:
ntp:
$ref: '#/components/schemas/EquipmentAdmin'
onsite:
type: boolean
alreadyUsedOnSite:
type: boolean
site:
type: string
format: uuid
required:
- alreadyUsedOnSite
- ntp
- onsite
- site
Token:
type: object
properties:
key:
type: string
readOnly: true
userId:
type: string
format: uuid
created:
type: string
format: date-time
readOnly: true
required:
- created
- key
- userId
TokenRead:
type: object
properties:
userId:
type: string
format: uuid
created:
type: string
format: date-time
readOnly: true
required:
- created
- userId
Unit:
type: object
properties:
unitId:
type: string
format: uuid
readOnly: true
blockId:
type: string
format: uuid
rnblId:
type: string
nullable: true
sgglId:
type: string
nullable: true
unitType:
allOf:
- $ref: '#/components/schemas/UnitType'
readOnly: true
unitTypeId:
type: string
format: uuid
writeOnly: true
localUnitIdentifier:
type: string
nullable: true
description: Local unit identifier (Ex. « Apt 1.1 »)
telecomUnitIdentifier:
type: string
description: Telecom unit identifier (Ex. « 101 »)
isMarkedForDeletion:
type: boolean
isMarkedForDeletionAt:
type: string
format: date-time
readOnly: true
nullable: true
isMarkedForDeletionByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
isMarkedForDeletionByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
isDeleted:
type: boolean
deletionValidatedAt:
type: string
format: date-time
readOnly: true
nullable: true
deletionValidatedByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
deletionValidatedByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
isVHCNCapable:
type: boolean
readOnly: true
isConnected:
type: boolean
readOnly: true
floor:
type: number
format: double
created_at:
type: string
format: date-time
readOnly: true
required:
- blockId
- created_at
- deletionValidatedAt
- deletionValidatedByOrganisation
- deletionValidatedByUser
- floor
- isConnected
- isMarkedForDeletionAt
- isMarkedForDeletionByOrganisation
- isMarkedForDeletionByUser
- isVHCNCapable
- telecomUnitIdentifier
- unitId
- unitType
- unitTypeId
UnitAdmin:
type: object
properties:
unitId:
type: string
format: uuid
readOnly: true
blockId:
type: string
format: uuid
rnblId:
type: string
nullable: true
sgglId:
type: string
nullable: true
unitType:
allOf:
- $ref: '#/components/schemas/UnitType'
readOnly: true
unitTypeId:
type: string
format: uuid
writeOnly: true
localUnitIdentifier:
type: string
nullable: true
description: Local unit identifier (Ex. « Apt 1.1 »)
telecomUnitIdentifier:
type: string
description: Telecom unit identifier (Ex. « 101 »)
isMarkedForDeletion:
type: boolean
isMarkedForDeletionAt:
type: string
format: date-time
readOnly: true
nullable: true
isMarkedForDeletionByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
isMarkedForDeletionByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
isDeleted:
type: boolean
deletionValidatedAt:
type: string
format: date-time
readOnly: true
nullable: true
deletionValidatedByUser:
allOf:
- $ref: '#/components/schemas/APIUser'
readOnly: true
nullable: true
deletionValidatedByOrganisation:
allOf:
- $ref: '#/components/schemas/Organisation'
readOnly: true
nullable: true
isVHCNCapable:
type: boolean
readOnly: true
isConnected:
type: boolean
readOnly: true
floor:
type: number
format: double
created_at:
type: string
format: date-time
readOnly: true
required:
- blockId
- created_at
- deletionValidatedAt
- deletionValidatedByOrganisation
- deletionValidatedByUser
- floor
- isConnected
- isDeleted
- isMarkedForDeletion
- isMarkedForDeletionAt
- isMarkedForDeletionByOrganisation
- isMarkedForDeletionByUser
- isVHCNCapable
- telecomUnitIdentifier
- unitId
- unitType
- unitTypeId
UnitType:
type: object
properties:
unitTypeId:
type: string
format: uuid
readOnly: true
isActive:
type: boolean
name:
type: string
required:
- isActive
- name
- unitTypeId
securitySchemes:
cookieAuth:
type: apiKey
in: cookie
name: sessionid
tokenAuth:
type: apiKey
in: header
name: Authorization
description: Token-based authentication with required prefix "Token"
tags:
- name: Application Admin - Organisation Types
description: ''
- name: Application Admin - Organisations
description: ''
- name: Application Admin - Site Types
description: ''
- name: Application Admin - Unit Types
description: ''
- name: Application Admin - Equipment Types
description: ''
- name: Application Admin - Physical Link Types
description: ''
- name: Application Admin - Access Control Procedure Types
description: ''
- name: Application Admin - Addresses
description: ''
- name: Admin - API Users
description: ''
- name: Admin - Roles
description: ''
- name: Admin - Tokens
description: ''
- name: Admin - Sites
description: ''
- name: Admin - Blocks
description: ''
- name: Admin - Units
description: ''
- name: Admin - Equipments
description: ''
- name: Admin - Physical Links
description: ''
- name: Admin - Audit Logs
description: ''
- name: ETL - Addresses
description: ''
- name: Organisation Types
description: ''
- name: Organisations
description: ''
- name: Site Types
description: ''
- name: Unit Types
description: ''
- name: Equipment Types
description: ''
- name: Physical Link Types
description: ''
- name: Access Control Procedure Types
description: ''
- name: Addresses
description: ''
- name: Sites
description: ''
- name: Blocks
description: ''
- name: Units
description: ''
- name: Equipments
description: ''
- name: Physical Links
description: ''