ReqEdit InterOp Server
4 min read
last updated: 03/13/2023
The InterOp Server is an online solution for file conversions, validation and reading of ReqIF files self-hosted or as a SaaS.
All conversions supported by ReqEdit Ultimate are supported by the Interop server as well, like Word documents, vendor ReqIF files, RIF zip or xml files and our easy-to-use ReqXML format.
Offers additional functionality for managing and monitoring the progress of multiple conversions.
The InterOp server exposes the functionality to a REST interface controlled by API calls with url parameters or requests using JSON data and returning JSON/XML responses.
Supported file formats
Only the following file formats are currently supported for conversions:
Input Types
- .doc
- .reqif / .reqifz
- .reqxml / .reqxmlz
- .zip (RIF 1.1a)
- .xml (RIF 1.1a)
Output types
- .reqif / .reqifz
- standard ReqIF
- tool vendor specific (multi spectype) ReqIF
- multi spectype Doors Next ReqIF up to 7.0.2 with limitations
- .reqxml / .reqxmlz
- .zip (RIF 1.1a)
- .xml (RIF 1.1a)
Quick User Guide
The following use case guide presents a quick overview of the steps needed to do some common tasks.
Converting files
- Upload files to the server
the files will be stored on an isolated workspace allocated only for the current user
- Create a new conversion with specific files
list of uploaded files must be specified for a conversion
- Monitor conversion progress
the conversion can end with success or failure
- Get conversion details
get the list of the resulting files or check the failures if any
- Download results
use the result download API call to get your files
Validate a ReqIF file
- Upload file to the server
- Validate the specified file and check the results
Open and read a ReqIF file
- Upload file to server
- Open ReqIF file
- Read contents of specific ReqIF file over the REST API
- Close ReqIF file or wait to close it automatically
Deployment types
Self-Hosted
InterOp server can be deployed in your own data center. For this you will need the following:
- IIS Server
- One or more ReqEdit licenses
Configuration guides are available on request.
As a SaaS
We offer InterOp server as an online service for our clients. For this you will need the following:
- Authentication with username/password provided by us
You will also get the following benefits:
- Isolated workspace
- No request throttling limits
- Multiple ReqEdit licenses included
Try out the InterOp Server
For quick tests, the InterOp server has an internal Swagger page that you can use to test the functionality. Or you can download the Postman API Collection and use it from your desktop.
Configure Postman with the provided credentials and save it.
Internal Swagger page can be accessed only after entering correct access credentials. Swagger offers a minimal set of API testing functions.
InterOp Server REST Interface
The Interop Server supports the following use cases exposed as REST API calls. REST communication happens over HTTP messages where the status code stands for success or failure of the requests.
File management
Users can upload, overwrite or delete files, create, rename or delete folders in the client workspace. A client workspace is an isolated storage space where all the files are stored for a single client and used from there.
Only supported filetypes can be uploaded:
.doc .reqif .reqifz .xml .reqxml .reqxmlz .rif .txt .zip .json
Moving files/folders is not supported.
Conversion management
All conversions are stored in separate conversion jobs. Each job can be controlled and monitored individually. The jobs are queued up and processed by multiple ReqEdit instances. Conversion monitoring and execution is happening internally and cycling every 30 seconds.
Conversions can have multiple states but follow a simple flow:
- Paused
conversions will not be processed, unpausing a conversion will go to queued and will be processed on the next conversion cycle - Queued
queued conversions can be paused - In progress
- Finished
once finished, the conversions can be restarted anytime- Success
- Failed
Actions that change the states are the following:
- Create creates a new conversion that will become Queued
- Pause indefinitely, make configuration changes then Unpause or Restart
- Unpause Paused conversions will become Queued
- Restart Finished conversions
Available actions for conversions
List conversions
API call will list all the conversions in with all related information like results statuses and log files
Create conversion
Specify source files, conversion type, mapping file and conversion options
Delete conversion
Remove all information about a conversion
Update conversion
Change any of the conversion options by sending only the changes
Pause / unpause conversion
Make changes to configuration and later restart the conversion
Restart conversion
Repeat a finished or paused conversion
Get conversion details
Lists the result status with all associated files: source files, logs, conversion results
Download conversion results files
Specify a file to download from the conversion results
Read ReqIF files
Uploaded ReqIF files can be opened and used over the REST API interface. There is a specific procedure for this:
- Upload a ReqIF file or use an existing file
- Open the ReqIF file so it can be read over REST API with /api/reqif/open API call
- if the open is successfull take the provided document name
- List specification contents
- Call /api/reqif/get-specifications with the opened document name
- The opened ReqIF file will be automatically closed after a period
to check which ReqIF files are opened use the /api/reqif/open-files
Validate ReqIF files
Any uploaded ReqIF file can be easily validated, and the results will be returned as the response to the API call.
Call /api/reqif/validate with any ReqIF, the response will contain the valid or invalid message and corresponding status code.
Monitoring
- Ping: health check
- Status: load / resources / uptime / current user / workspace
Installation
Request a deployment package from REQTEAM and then follow the installation guide.