MEF Service Function Testing (Mef Lso Allegro Service Function Test)
MEF Service Function Testing from MEF — 16 path(s) described in OpenAPI.
MEF Service Function Testing from MEF — 16 path(s) described in OpenAPI.
openapi: 3.0.1
info:
title: Service Function Testing
description: >
**This file forms part of Mplify 149**
**This API implements part of Business Requirements & Use Cases described
in Mplify 136.1**
Mplify Service Function Testing is defined as testing that is performed
either
as a part of service verification, service activation, or service
maintenance. The requirements and Use Cases are the same for the Allegro
Interface Reference Point (IRP), the Interlude IRP, and the Legato IRP.
List of use cases supported by the API:
- Create, Modify, Suspend, Resume, Cancel Test Job w/Test Profile
- Create, Modify, Suspend, Resume, Cancel Test Job w/o Test Profile
- Retrieve Test Job List
- Retrieve Test Job by ID
- Create, Modify, Delete Test Profile
- Retrieve Test Profile List
- Retrieve Test Profile by ID
- Retrieve Test Result List
- Retrieve Test Result by ID
- Subscribe to Notifications
- Unsubscribe to Notifications
Copyright 2025 Mplify Alliance and its contributors
This file includes content based on the TM Forum Service Test Management
API
(TMF653 v4.1.0) available at
https://github.com/tmforum-apis/TMF653_ServiceTestManagement, which is
licensed by
the TM Forum under the Apache License version 2.0. Such content has been
modified by the Mplify Alliance and its contributors.
version: 3.0.0
servers:
- url: 'https://{serverBase}/mefApi/allegro/serviceFunctionTesting/v3/'
variables:
serverBase:
description: The base of SOF's URL.
default: mplify.net
tags:
- name: testJob
- name: cancelTestJob
- name: modifyTestJob
- name: resumeTestJob
- name: suspendTestJob
- name: testProfile
- name: testResult
- name: events subscription
paths:
/testJob:
get:
tags:
- testJob
summary: List or find TestJob objects.
description: >-
The Buyer/Client requests a list of Test Jobs using none or more of the
filter criteria. The Seller/Server returns a summarized list of Test
Jobs. For each Test Job returned, the Seller/Server also provides a
Test Job Identifier that uniquely identifiers this Test Job within the
Seller/Server. The order of the elements returned to the Buyer/Client
is defined by the Seller/Server (e.g. natural order) and does not
change between the pages.
operationId: listTestJob
parameters:
- name: relatedServiceIdFrom
in: query
description: The from service identifier of the Service to be tested.
required: false
schema:
type: string
- name: relatedServiceIdTo
in: query
description: The to service identifier of the Service to be tested.
required: false
schema:
type: string
- name: testProfileId
in: query
description: The identifier of the Test Profile.
required: false
schema:
type: string
- name: name
in: query
description: The name of the Test Job.
required: false
schema:
type: string
- name: requestedStartDateTime.gt
in: query
description: The start date and time of the Test Job - greater than.
required: false
schema:
type: string
format: date-time
- name: requestedStartDateTime.lt
in: query
description: The start date and time of the Test Job - lower than.
required: false
schema:
type: string
format: date-time
- name: requestedEndDateTime.gt
in: query
description: The end date and time of the Test Job - greater than.
required: false
schema:
type: string
format: date-time
- name: requestedEndDateTime.lt
in: query
description: The end date and time of the Test Job - lower than.
required: false
schema:
type: string
format: date-time
- name: offset
in: query
description: >-
Requested index for start of item to be provided in response
requested by the client. Note that the index starts with "0".
required: false
schema:
type: integer
- name: limit
in: query
description:
Requested number of resources to be provided in response.
required: false
schema:
type: integer
format: int32
responses:
'200':
description:
"'OK. (https://tools.ietf.org/html/rfc7231#section-6.3.1)'"
headers:
X-Pagination-Throttled:
description: >-
Used to indicate that result page was throttled to maximum
possible size and there are additional results that can be
fetched.
schema:
type: boolean
X-Total-Count:
description: >-
The total number of matching items. E.g. if there are 50
matching items in total, but the request has offset=10 and
limit=10, then the X-Total-Count is 50.
schema:
type: integer
X-Result-Count:
description: The number of items included in the response.
schema:
type: integer
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/TestJob_Find'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'422':
description:
Unprocessable entity due to the business validation problems
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/Error422'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
post:
tags:
- testJob
summary: Creates a TestJob.
description: >-
A request initiated by the Buyer/Client to create a Test Job in the
Seller/Server that specifies the service to be tested.
operationId: createTestJob
requestBody:
description: The Test Job to be created.
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/TestJob_Common'
required: true
responses:
'201':
description:
"'Created (https://tools.ietf.org/html/rfc7231#section-6.3.2)'"
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/TestJob'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'422':
description:
Unprocessable entity due to the business validation problems
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/Error422'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
'/testJob/{id}':
get:
tags:
- testJob
summary: Retrieves a TestJob by ID.
description: >-
The Buyer/Client requests detailed information about a single Test Jobs
based on the Test Job Identifier.
operationId: retrieveTestJob
parameters:
- name: id
in: path
description: Identifier of the Test Job
required: true
schema:
type: string
responses:
'200':
description:
"'OK. (https://tools.ietf.org/html/rfc7231#section-6.3.1)'"
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/TestJob'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'404':
description: Not Found
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error404'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
/cancelTestJob:
get:
tags:
- cancelTestJob
summary: Lists or finds CancelTestJob objects.
description: >-
The Buyer/Client requests a list of Cancel Test Job based on a set of
filter criteria.
operationId: listCancelTestJob
parameters:
- name: testJobId
in: query
description:
Identifier of Test Job that is a subject of CancelTestJob.
required: false
schema:
type: string
- name: state
in: query
description: >-
State of CancelTestJob. See `TestJobProcessStateType` definition
for details.
required: false
schema:
type: string
enum:
- accepted
- acknowledged
- rejected
- name: creationDate.gt
in: query
description: Date when the CancelTestJob was created - greater than.
required: false
schema:
type: string
format: date-time
- name: creationDate.lt
in: query
description: Date when the CancelTestJob was created - lower than.
required: false
schema:
type: string
format: date-time
- name: offset
in: query
description: >-
Requested index for start of item to be provided in response
requested by client. Note that the index starts with "0".
required: false
schema:
type: integer
format: int32
- name: limit
in: query
description: >-
Requested number of items to be provided in response requested by
client.
required: false
schema:
type: integer
format: int32
responses:
'200':
description: Success
headers:
X-Pagination-Throttled:
description: >-
Used to indicate that result page was throttled to maximum
possible size and there are additional results that can be
fetched.
schema:
type: boolean
X-Total-Count:
description: >-
The total number of matching items. E.g. if there are 50
matching items in total, but the request has offset=10 and
limit=10, then the X-Total-Count is 50.
schema:
type: integer
X-Result-Count:
description: The number of items included in the response.
schema:
type: integer
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/CancelTestJob'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'422':
description:
Unprocessable entity due to the business validation problems
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/Error422'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
post:
tags:
- cancelTestJob
description: >-
A request initiated by the Buyer/Client to cancel a Test Job in the
Seller/Server system.
operationId: createCancelTestJob
requestBody:
description: The CancelTestJob to be created.
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/CancelTestJob_Common'
required: true
responses:
'201':
description: Created
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/CancelTestJob'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'422':
description:
Unprocessable entity due to the business validation problems
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/Error422'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
'/cancelTestJob/{id}':
get:
tags:
- cancelTestJob
summary: Retrieves a CancelTestJob by ID.
description: >-
The Buyer/Client requests detailed information about a single Cancel
Test Job based on the Cancel Test Job Identifier.
operationId: retrieveCancelTestJob
parameters:
- name: id
in: path
description: Identifier of the CancelTestJob
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/CancelTestJob'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'404':
description: Not Found
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error404'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
/suspendTestJob:
get:
tags:
- suspendTestJob
summary: Lists or finds SuspendTestJob objects.
description: >-
The Buyer/Client requests a list of Suspend Test Job based on a set of
filter criteria.
operationId: listSuspendTestJob
parameters:
- name: testJobId
in: query
description:
Identifier of Test Job that is a subject of SuspendTestJob.
required: false
schema:
type: string
- name: state
in: query
description: >-
State of SuspendTestJob. See `TestJobProcessStateType` definition
for details.
required: false
schema:
type: string
enum:
- accepted
- acknowledged
- rejected
- name: creationDate.gt
in: query
description: Date when the SuspendTestJob was created - greater than.
required: false
schema:
type: string
format: date-time
- name: creationDate.lt
in: query
description: Date when the SuspendTestJob was created - lower than.
required: false
schema:
type: string
format: date-time
- name: offset
in: query
description: >-
Requested index for start of item to be provided in response
requested by client. Note that the index starts with "0".
required: false
schema:
type: integer
format: int32
- name: limit
in: query
description: >-
Requested number of items to be provided in response requested by
client.
required: false
schema:
type: integer
format: int32
responses:
'200':
description: Success
headers:
X-Pagination-Throttled:
description: >-
Used to indicate that result page was throttled to maximum
possible size and there are additional results that can be
fetched.
schema:
type: boolean
X-Total-Count:
description: >-
The total number of matching items. E.g. if there are 50
matching items in total, but the request has offset=10 and
limit=10, then the X-Total-Count is 50.
schema:
type: integer
X-Result-Count:
description: The number of items included in the response.
schema:
type: integer
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/SuspendTestJob'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'422':
description:
Unprocessable entity due to the business validation problems
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/Error422'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
post:
tags:
- suspendTestJob
description: >-
A request initiated by the Buyer/Client to suspend a Test Job in the
Seller/Server system.
operationId: createSuspendTestJob
requestBody:
description: The SuspendTestJob to be created.
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/SuspendTestJob_Common'
required: true
responses:
'201':
description: Created
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/SuspendTestJob'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'422':
description:
Unprocessable entity due to the business validation problems
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/Error422'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
'/suspendTestJob/{id}':
get:
tags:
- suspendTestJob
summary: Retrieves a SuspendTestJob by ID.
description: >-
The Buyer/Client requests detailed information about a single Suspend
Test Job based on the Suspend Test Job Identifier.
operationId: retrieveSuspendTestJob
parameters:
- name: id
in: path
description: Identifier of the SuspendTestJob
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/SuspendTestJob'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'404':
description: Not Found
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error404'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
/resumeTestJob:
get:
tags:
- resumeTestJob
summary: Lists or finds ResumeTestJob objects.
description: >-
The Buyer/Client requests a list of Resume Test Job based on a set of
filter criteria.
operationId: listResumeTestJob
parameters:
- name: testJobId
in: query
description:
Identifier of Test Job that is a subject of ResumeTestJob.
required: false
schema:
type: string
- name: state
in: query
description: >-
State of ResumeTestJob. See `TestJobProcessStateType` definition
for details.
required: false
schema:
type: string
enum:
- accepted
- acknowledged
- rejected
- name: creationDate.gt
in: query
description: Date when the ResumeTestJob was created - greater than.
required: false
schema:
type: string
format: date-time
- name: creationDate.lt
in: query
description: Date when the ResumeTestJob was created - lower than.
required: false
schema:
type: string
format: date-time
- name: offset
in: query
description: >-
Requested index for start of item to be provided in response
requested by client. Note that the index starts with "0".
required: false
schema:
type: integer
format: int32
- name: limit
in: query
description: >-
Requested number of items to be provided in response requested by
client.
required: false
schema:
type: integer
format: int32
responses:
'200':
description: Success
headers:
X-Pagination-Throttled:
description: >-
Used to indicate that result page was throttled to maximum
possible size and there are additional results that can be
fetched.
schema:
type: boolean
X-Total-Count:
description: >-
The total number of matching items. E.g. if there are 50
matching items in total, but the request has offset=10 and
limit=10, then the X-Total-Count is 50.
schema:
type: integer
X-Result-Count:
description: The number of items included in the response.
schema:
type: integer
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/ResumeTestJob'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'422':
description:
Unprocessable entity due to the business validation problems
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/Error422'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
post:
tags:
- resumeTestJob
description: >-
A request initiated by the Buyer/Client to resume a Test Job in the
Seller/Server system.
operationId: createResumeTestJob
requestBody:
description: The ResumeTestJob to be created.
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/ResumeTestJob_Common'
required: true
responses:
'201':
description: Created
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/ResumeTestJob'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'422':
description:
Unprocessable entity due to the business validation problems
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/Error422'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
'/resumeTestJob/{id}':
get:
tags:
- resumeTestJob
summary: Retrieves a ResumeTestJob by ID.
description: >-
The Buyer/Client requests detailed information about a single Resume
Test Job based on the Resume Test Job Identifier.
operationId: retrieveResumeTestJob
parameters:
- name: id
in: path
description: Identifier of the ResumeTestJob
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/ResumeTestJob'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'404':
description: Not Found
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error404'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
/modifyTestJob:
get:
tags:
- modifyTestJob
summary: Lists or finds ModifyTestJob objects.
description: >-
The Buyer/Client requests a list of Modify Test Job based on a set of
filter criteria.
operationId: listModifyTestJob
# --- truncated at 32 KB (111 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/mef/refs/heads/main/openapi/mef-lso-allegro-service-function-test-openapi.yml