Ennov InSight API Documentation

You can import/extract data, perform create/update queries, or delete entities to enhance the functionality of the Ennov InSight user interface.

The Ennov InSight API (application programming interface) enables you to integrate external systems with Ennov InSight .

The Ennov InSight API can be used to manage:

— Assembly Structure Functions — Registrations Entities

— Tasks and References Entities

— Product Detail Set Detail Entities

— Product Family Agnostic Entities

— Core Ennov InSight Entities

— Assembly Structure

— Life cycle assembly creation

— Life cycle operations and metadata

— Product related Entities

— Entering unique Events within Ennov InSight For Data Admin API, click here.

Ennov InSight API Authentication OAuth 2.0

OAuth 2.0 protocol is used to authorize access to protected resources.

Authorized client application access to protected resources like web APIs is obtained by Microsoft supported

OAUTHv2 flow.

Depending on the Azure Portal configuration, some of the values below may not be required.

Ennov InSight includes the following grant access types:

Grant Type Description

Resource Owner

Password Credentials

(ROPC)

Used where specified user credentials are supplied in the authentication request.
Client Credentials Used by the built-in "Data Exchange" user.
Authorization Code The code generated after a user logs on with the credentials. This code is supplied to the API.
Device Code Used to allow access to a device from a remote site in a multi-factor authentication. User authentication is still required via the browser to gain access.
Grant Type Description
Refresh Token Authorizes servers to use temporary access tokens without the need for a user to authenticate with the token expires. Refresh Token is also known as Offline Access.

Resource Owner Password Credentials (ROPC)

Resource Owner Password Credentials (ROPC) allows an application to sign in by directly handling the user password.

To enable an API to perform operations based on the defined permissions, you should provide tenant, client_id, user name, password and client_secret values of an active user account configured in Ennov InSight Security Administration. The client_secret value is optional and depends on Azure configuration.

The Audit Trail defines all the operations in logs as specified user.

Resource Owner Password Credentials (ROPC) grant type is a legacy authentication method and is only supported for Azure Accounts, not Federated Accounts.

Client Credentials

Use this grant type if you are the built-in "Data Exchange" user.

To enable the API to use the built-in "Data_Exchange" user account, you should provide the tenant, client_id, client_secret in the Azure Portal - App Registration associated with Ennov InSight .

The Audit Trail defines all the operations in logs as Data_Exchange user.

Authorization Code

Use this grant type for configurations that use Federated accounts without Azure Active Directory as the underlying Identity Provider.

For this process, the auth code flow requires the Oauth flow to redirect the API to access Ennov InSight . You will be able to generate a time expiring code that grants access to the API.

To generate this code, you should have an account configured in Security Administration with appropriate permissions.

The Audit Trail defines all the operations in logs as the specific user that generated the access token.

If an appropriate redirect_uri is not configured in the Azure Portal - App Registration, this process becomes a manual operation to provide the code to the API.

As the Bearer Token Generated expires quickly, it is recommended that the Authorization Code grant is generated with the “offline_access” scope. This way the refresh_token grant can be utilized on subsequent API authentication requests.

Device Code

Use this grant type for configurations that use Federated accounts without Azure Active Directory as the underlying Identity Provider.

For this process, the device code flow requires the user to authenticate in a two-stage process to generate the bearer token. Authorizing access via the device_code grant should not be performed in a browser on the same client or server that performs the API calls.

The account used to generate the approval should be the account configured in Security Administration with appropriate permissions.

The Audit Trail defines all the operations in logs as the specific user that generated the access token.

This grant type requires "Allow public client flow" to be configured in the Azure Portal - App Registration.

As the Bearer Token Generated expires quickly, it is recommended that the Device Code grant is generated with the “offline_access” scope. This way the refresh_token grant can be utilized on subsequent API authentication requests.

Refresh Token

Use this grant type in conjunction with the access token to extend the frequency required for authentication requests. This grant type is also known as "Offline Access".

All the grant types can be configured to use the Refresh Token, but the OAuth v2 Microsoft endpoints are required to define a scope parameter on initial authentication.

As the Bearer Token is generated with refresh_token parameter, the grant type can be utilized for subsequent authentication requests without additional verification steps. For example: generate an authentication code, completing a device code approval, or sending username or password in the API request.

Worked Examples OAuth 2.0

Client Credentials Defined Example OAuth 2.0

Use OAuth 2.0 client credentials grant flow to enable a web service to use its own credentials to authenticate another call web service.

To define client credentials:

  1. Submit a HTTPS POST request to: https://login.microsoftonline.com/<tenant_id>/oauth2/v2.0/token tenant_id format: xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx

    Note: In the URL above common is no longer supported with the v2 oauth2 endpoints so tenant_id must be used. The following parameters are updated.

    The body of the request should include the form-data:

    Parameter Name Value
    grant_type client_credentials
    Parameter Name Value
    client_id xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx
    scope <registered client_id>/.default openid
    client_secret <registered client_secret>

    The Response generates an AzureBearerBody Token used in conjunction with the API X-CSRF-TOKEN access token generated in step 3.

  2. Submit an HTTPS GET request to get a token.

    Send an HTTP request (GET-request) to: http://hostname:port/insight/api/v2/token

    The body of the JSON response includes

    { "token": "xAuthToken": "44B1E9C995C654E38DDD82BF708784D1" }

    with the current session ID. The response header contains the following values:

    Parameter Name Value
    X-CSRF-HEADER X-CSRF-TOKEN
    X-CSRF-PARAM _csrf
    X-CSRF-TOKEN 40d67d97-fb28-4a78-a111-5bae0ee706bb
  3. Use that token and login information to authenticate.
  4. Send a login POST-request to pass authentication using the same session (set JSESSIONID):

    Parameter

    Name

    Value
    URI: http://hostname:port/insight/api/v2/login
    Request header values:
    Content-Type: "application/json"
    X-CSRF-TOKEN: 40d67d97-fb28-4a78-a111-5bae0ee706bb. This value is retrieved as a result of the previous request. (http://hostname:port/insight/api/v2/token)
    Cookie:

    JSESSIONID=44B1E9C995C654E38DDD82BF708784D1

    The value is taken from XAuthToken form described in the step 2.

    Request body (raw):
    {{AzureBearerBody}}
    This is the Azure Generated Authorization Token gathered in steps 1 and 2.

    After successful logon, the application creates a new session and a new token to use in subsequent API calls. The response header contains the following values:

    Parameter Name Values
    X-CSRF-HEADER X-CSRF-TOKEN
    X-CSRF-PARAM _csrf
    X-CSRF-TOKEN 40d67d97-fb28-4a78-a111-5bae0ee706bb
  5. Make an API call with your new token.

All subsequent REST API POST-requests (read/create/create-or-update/delete for a specific entity) are sent through "/api/v2" URI (example: http://hostname:port/insight/api/v2/event/46098/delete) with the following attributes:

Parameter Name Value
Request header values:
Content-Type: "application/json"
X-CSRF-TOKEN: 40d67d97-fb28-4a78-a111-5bae0ee706bb
Cookie:

JSESSIONID=44B1E9C995C654E38DDD82BF708784D1

The value is taken from XAuthToken form described in the step 2.

Request body: JSON object for the specific entity.

Instead of X-CSRF-TOKEN header, you can use the "_csrf" param.

ROPC Defined Example OAuth 2.0

Specify user credentials in the authentication request to perform API operations based on Ennov InSight security permissions.

To define client credentials:

  1. Submit a HTTPS POST request to: https://login.microsoftonline.com/<tenant_id>/oauth2/v2.0/token The tenant_id format: xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx.

    Note: In the URL above common is no longer supported with the v2 oauth2 endpoints so tenant_id must be used. The following parameters are updated.

    The body of the request should include the form-data:

    Parameter Name Value
    grant_type password
    client_id xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx
    scope <registered client_id>/.default openid
    user name <user account with security permissions>
    password <password_for user_account>
    Parameter Name Value
    client_secret <registered client_secret>

    The Response generates an AzureBearerBody Token used in conjunction with the API X-CSRF-TOKEN access token generated in step 3.

  2. Submit an HTTPS GET request to get a token.

    Send an HTTP request (GET-request) to: http://hostname:port/insight/api/v2/token The body of the JSON response includes

    { "xAuthToken": "44B1E9C995C654E38DDD82BF708784D1" }

    with the current session ID. The response header contains the following values:

    Parameter Name Value
    X-CSRF-HEADER X-CSRF-TOKEN
    X-CSRF-PARAM _csrf
    X-CSRF-TOKEN 40d67d97-fb28-4a78-a111-5bae0ee706bb
  3. Use that token and login information to authenticate.
  4. Send a login POST-request to pass authentication using the same session (set JSESSIONID):
    Parameter Name Value
    URI: http://hostname:port/insight/api/v2/login
    Request header values:
    Content-Type: "application/json"
    X-CSRF-TOKEN: 40d67d97-fb28-4a78-a111-5bae0ee706bb. This value is retrieved as a result of the previous request. (http://hostname:port/insight/api/v2/token)
    Request body (raw):

    {"access_token":"<obtained_access_token>", "token_type":"Bearer"

    This is the Azure Generated Authorization Token gathered in steps 1 and 2.

    After successful logon, the application creates a new session and a new token to use in subsequent API calls. The response header contains the following values:

    Parameter Name Values
    X-CSRF-HEADER X-CSRF-TOKEN
    X-CSRF-PARAM _csrf
    X-CSRF-TOKEN 40d67d97-fb28-4a78-a111-5bae0ee706bb
    Cookie

    JSESSIONID=44B1E9C995C654E38DDD82BF708784D1

    The value is taken from XAuthToken form described in the step 2.

  5. Make an API call with your new token.

All subsequent REST API POST-requests (read/create/create-or-update/delete for a specific entity) are sent through "/api/v2" URI (example: http://hostname:port/insight/api/v2/event/46098/delete) with the following attributes:

Parameter Name Value
Request header values:
Content-Type: "application/json"
X-CSRF-TOKEN: 40d67d97-fb28-4a78-a111-5bae0ee706bb
Cookie:

JSESSIONID=44B1E9C995C654E38DDD82BF708784D1

The value is taken from XAuthToken form described in the step 2.

Request body: JSON object for the specific entity.

Instead of X-CSRF-TOKEN header, you can use the "_csrf" param.

Authorization Code Defined Example OAuth 2.0

Use OAuth 2.0 client credentials grant flow to enable a web service to use its own credentials to authenticate another call web service.

Prerequisites

Use the offline_access scope parameter when connecting through this method. Logging into the RIM API should follow the refresh_token grant after initial bearer token has been generated.

If there is no redirection configured to verify the user login details, and the callback URI is not registered in the Azure Portal - App Registration, this process will require a manual step The parameters for URL to the OAuth endpoint:

Parameter Name Value
client_id xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx
response_type code
redirect_uri https://some-vaid-uri-configured-in-azure-portal
response_mode query
scope <registered client_id>/.default openid offline_access
state <A random string>

Example: https://login.microsoftonline.com/<tenant_id>/oauth2/v2.0/authorize? client_id=<client_id>&response_type=code&redirect_uri=<login_url_registered _in_app-portal>&response_mode=query&scope=<client_id>%2F.default%20openid

%20offline_access&state=<a_state_string>

The tenant_id format: xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx.

Once the URL is updated, paste the string into a web browser. This will direct you to Ennov InSight login page. If there is no redirection configured, you will logon Ennov InSight . In this case, close the browser window and re-copy the original URL.

A successful code generation displays an Http 400 error page without a valid redirection_uri defined. Example:

<login_url_registered_in_app-portal>? code=<very_long_hash_string>&state=<a_state_value>&session_state=<a_auto_ge nerated_string>

Copy the whole of the URL to a text editor and extract the very long hash string between code= and &state.

To define client credentials:

  1. Submit a HTTPS POST request to: https://login.microsoftonline.com/<tenant_id>/oauth2/v2.0/token The body of the request should include the form-data:
    Parameter Name Value
    grant_type authorization_code
    client_id xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx
    scope <registered client_id>/.default openid
    redirect_uri <login url defined in code request>
    code <hash string extracted earlier>
    offline_access Optional. Add this parameter if you want to use the refresh_token flow.

    The Response generates an AzureBearerBody Token.

  2. Use this bearer token in the refresh_token grant flow if the offline_access parameter is defined. If not, follow the usual steps to generate the X-CSRF-TOKEN, JSESSION & RIM API login.

Device Code Example OAuth 2.0

Use this grant type for configurations that use Federated accounts without Azure Active Directory as the underlying Identity Provider.

Prerequisites

Use the offline_access scope parameter when connecting through this method. Logging into the RIM API should follow the refresh_token grant after initial bearer token has been generated.

To define client credentials:

  1. Submit a HTTPS POST request to: https://login.microsoftonline.com/<tenant_id>/oauth2/v2.0/token

    The tenant_id format: xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx.

    The body of the request should include the form-data:

    Parameter Name Value
    client_id xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx
    scope <registered client_id>/.default openid offline_access

    A "user_code" is generated on successful POST operation.

  2. In a browser, navigate to: https://microsoft.com/devicelogin.
  3. Enter the user_code string generated into the browser field.
  4. Follow the prompts to complete the authentication request.
  5. Record or capture the device_code generated as part of the POST request
  6. Submit a HTTPS POST request to: https://login.microsoftonline.com/<tenant_id>/oauth2/v2.0/token
    Parameter Name Value
    grant_type urn:ietf:params:oauth:grant-type:device_code
    client_id <registered client_id>
    device_code <device_code_from_previous_step>

    The Response generates an AzureBearerBody Token with the offline_access parameter set.

  7. Use this bearer token in the refresh_token grant flow.

If the offline_access parameter is not defined, follow the usual steps to generate the X-CSRF-TOKEN, JSESSION & RIM API login.

Refresh Token Code Example OAuth 2.0

Use Refresh Token to get new access token when your current access token expires..

To use Refresh Token:

  1. Submit a HTTPS POST request to: https://login.microsoftonline.com/<tenant_id>/oauth2/v2.0/token The tenant_id format: xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx.
    Parameter Name Value
    grant_type refresh_token
    client_id <registered client_id>
    refresh_token

    To obtain it, see: Authorization Code Defined Example OAuth

    2.0

    scope

    <registered client_id>/.default openid offline_access

    The offline_access parameter must be added to the scope on the initial authorization request to be valid on the refresh_token grant.

    The Response generates an AzureBearerBody Token used in conjunction with the API X-CSRF-TOKEN access token.

  2. Submit an HTTPS GET request to get a token.

    Send an HTTP request (GET-request) to: http://hostname:port/insight/api/v2/token The body of the JSON response includes the following with the current session ID.

    { "xAuthToken": "F6A8C5D3B1C2EC9A37DF380C7EB5A9C5" }

    The response header contains the following values:

    Parameter Name Value
    X-CSRF-HEADER X-CSRF-TOKEN
    X-CSRF-PARAM _csrf
    X-CSRF-TOKEN 40d67d97-fb28-4a78-a111-5bae0ee706bb
  3. Use that xAuthToken as JSESSIONID for cookies and X-CSRF-TOKEN to start user session.
  4. Send a login POST-request to pass authentication using the same session (set JSESSIONID):
    Parameter Name Value
    URI: http://hostname:port/insight/api/v2/login
    Request header values:
    Content-Type: "application/json"
    X-CSRF-TOKEN: 40d67d97-fb28-4a78-a111-5bae0ee706bb. This value is retrieved as a result of the previous request. (http:// hostname:port/insight/api/v2/token)
    Cookie:

    JSESSIONID=F6A8C5D3B1C2EC9A37DF380C7EB5A9C5.

    This value is retrieved from XAuthToken form as a result of the step 2.

    Request body (raw):

    {"access_token":"<obtained_access_token>", "refresh_token":"<obtained_refresh_token>",

    "token_type":"Bearer"}

    This is the Azure Generated Authorization Token gathered in steps 1 and 2.

    After successful logon, the application creates a new session and a new token to use in subsequent API calls. The response header contains the following values:

    Parameter Name Values
    X-CSRF-HEADER X-CSRF-TOKEN
    X-CSRF-PARAM _csrf
    X-CSRF-TOKEN 40d67d97-fb28-4a78-a111-5bae0ee706bb
  5. Make an API call with your new token.

All subsequent REST API POST-requests (read/create/create-or-update/delete for a specific entity) are sent through "/api/v2" URI (example: http://hostname:port/insight/api/v2/event/46098/delete) with the following attributes:

Parameter Name Value
Request header values:
Content-Type: "application/json"
X-CSRF-TOKEN: 40d67d97-fb28-4a78-a111-5bae0ee706bb
Cookie:

JSESSIONID=F6A8C5D3B1C2EC9A37DF380C7EB5A9C5.

This value is retrieved from XAuthToken form as a result of the step 2.

Request body: JSON object for the specific entity.

Instead of X-CSRF-TOKEN header, you can use the "_csrf" param.

Ennov InSight RIM 7.3 API Changes

Ennov InSight 7.3 Data Administration Lists - CUD Operations

Ennov InSight 7.3 includes the following List of Data Administration entities supported by API Create, Update, Delete (CUD) operations:

Table 2: Data Administration Lists

Data Administration Section Data Administration Section List Name
Application Maintenance Age Span Population Values
Application Category Values
Application Status Values
Application Type Values
CTA Product Role Values
Country Values
Country Values - Health Authority
Legal Status Values
MEDRA Term Values
Medical Condition Investigated Values
Orphan Status Values
Procedure Type Values
Product Information Document Type Values
Reason for Premature Ending Values
Region Type Values
Regulatory Entitlement Type Values
Assembly Assembly Category Values
Assembly DTD/Schema Types
Assembly Status Values
Assembly Subcategory Values
Assembly Variables Assembly Repository Variables
Assembly System Defined Variables
Assembly User Defined Variables
Calyx RIM Assembly Variables
Change Maintenance Change Type Values
Custom List Maintenance Custom List Names
Custom List Values
Data Administration Section Data Administration Section List Name
DMS Integration Bind to Label Values
Bind to Status Values
Rendition Identifier Values
Event Maintenance Action Type Values
EU Grouping or Worksharing Values
Event Status Values
Event Type Values
Secondary Event Type Values
Timeline/Event Plan Type Values
Timeline/Event Plan Values
Timeline/Event Plan Values - Timeline/Event Plan Countries
Other Application Submission Type Values
Attached Document Content Type Values
Concentration Measure Type Values
Denominator Unit Values
Entity XML/UI Mappings
Indications/Intended Use Values
Legal Basis Values
MAH/Development Sponsor/Organization Values
Previous EV Code Values
Quantity Unit of Measure Values
SME Status Values
Units of Measurement Values
Unit of Measure Prefix Values
Unit of Presentation Values
Weight Unit of Measure Values
Data Administration Section Data Administration Section List Name
Product Detail Set Maintenance Color Values
Compendial Designation/Source Values
Component Type Values
Data Classification Type Values
Device – Type of Combination Values
Dose Frequency Values
Human Consumption Product Values
Intended Effect Values
Label Type Values
Manufacturer Values
Manufacturer Values – Global Detail Sets
Manufacturing Functions Values
Material Types Values
Medical Device UDI Values
Medical Device Part Code Values
Origin of Substance Values
Packaging Type Values
Product Material Values
Production Type Values
QC Status Values
Shape Values
Shelf Life Category Values
Shelf Life Type Values
Species Values
Storage Condition Values
Substance Role Values
Substance Values > Substance International Codes
Time Unit Values
Volume Unit of Measure Values
Data Administration Section Data Administration Section List Name
Product Family Maintenance ATC Values
Division Values
Domain Type Values
EURD ID Values
Product Family Status Values
Substance Class Values
Therapeutic Class Values
Product Maintenance Applicable Standards Values
Conformity Assessment Body Values
Conformity Assessment Path Values
Country Specific Detail Type Values
Country Specific Detail Values
Device Allergenicity Values
Device Sterility Indicator Values
Dosage/Pharmaceutical Form Values
EC Cert Values
Global Harmonization Task Force (GHTF) Class Values
Manufacturing Location Values
Medical Device Values
Product Category Type Values
Product Cross Reference Type Values
Product Status Values
Route of Administration Values
Special Measure Values
Sterilization Requirement Values
Sterilization Values
UMDNS Code Values
Project Maintenance Project Status Values
Project Type Values
Data Administration Section Data Administration Section List Name
Publishing Requirements Maintenance Electronic Format Requirement Values
Reference Maintenance Reference Content Values
Reference Participant Values
Reference Status Values
Reference Type Values
Registration Maintenance Content of Change Values
EMA Authorisation Status Values
Marketing Status Values
Master File Type Values
Medical Product Actions/Submission Status Values
Medicinal Product Name Part Type
Medicinal Product Name Part Type Values
Medicinal Product Type Values
Provenance Reason Values
Qualified Person Responsible for Pharmacovigilance (QPPV) Values
Registration Status Values
Risk of Supply of Shortage Reason Values
Sequence Maintenance Filing Type Values – Filing Type eCTD Code
Sequence Status Values
Data Administration Section Data Administration Section List Name
Submission Maintenance Applicant Contact Type Values
Applicant Contact Values
Applicant ID Values
Application Form Type Values
Font Definition Values
Leaf Status Values
PDF Properties Values
Promotional Material Audience Type Values
Promotional Material Type Values
Regulatory Activity Lead Values
Sequence Description Values
Sub Filing Type Values
Sub Filing Type Values – Sub Filing Type eCTD Code
Supplement Effective Date Type Values
Supplement Effect Date Type - Supplement Effective Date Type eCTD
Telephone Number Type Values
Submission Plan Maintenance Submission Plan Status Values
Task Maintenance Secondary Task/Sub-Task Values
Task/Sub-Task Status Progression Values
Task/Sub-Task Status Values

Ennov InSight 7.2 API Changes

This table describes the API changes for Ennov InSight 7.2.

Ennov InSight 7.2 includes the following API support.

Entity Name API/Controller Main endpoit Description
EUCategoryOfCMRTyp e EUCategoryOfCMRTyp eRestController /data-admin/eucategory-of-cmr-type EU Category of CMR Type Values
EuDeviceNomenclatur eCategory

EuDeviceNomenclatur

eCategoryRestControl ler

/data-admin/eudevice-no menclature-category EU Device Nomenclature Category Values
Entity Name API/Controller Main endpoit Description
EuDeviceNomenclatur e EuDeviceNomenclatur eRestController /data-admin/eudevice-nomenclature EU Device Nomenclature Values
FdaDeviceInvitroTerm FdaDeviceInvitroTerm RestController /data-admin/fdadevice-invitro-term FDA GMDN In-Vitro Term Type Values
FdaDeviceGMDN

FdaDeviceGMDNRest

Controller

/data-admin/gmdn

Global Medical Device

Nomenclature (GMDN) Code

Values

SubstanceSubtypeTy pe SubstanceSubtypeRe stController /data-admin/ substance-subtypetype Substance Subtype Type
OriginOfSubstance OriginOfSubstanceRe stController /data-admin/originof-substance Origin Of Substance Values
CertificateMasterFile CertificateMasterFileR estController data-admin/ certificate-master-file Certificate Master File Values
CertificateType CertificateTypeRestCo ntroller /data-admin/ certificate-type Certificate Type Values
DataCarrierIdentifier LicenseDataCarrierId entifierRestController /data-admin//license/ data-carrier-identifier Data Carrier Identifier

Comparison Table API changes between Ennov InSight 7.2 and Ennov InSight 7.1

This table describes the API changes between Ennov InSight 7.2 and Ennov InSight 7.1.

Entity

Name

API/Controller endpoint API 7.2 Updates Descriptio n
Attribute Column Class/Table
Substance

SubstanceRest

Controller

/data-admin/ substance

The following fields are added:

— deviceCm rCategory Id

— indexNum ber

— ecNumber

— DEVICE_CM

R_CATEGOR

Y_TYPE_ID

— INDEX_NU MBER

— EC_NUMBE R

Classname:Su bstance

— DB table:

ISM.SUBST

ANCE

— DB view:

ISM.DV_SU

BSTANCE

— This

field is foreign key to: Class name: EUCate goryOf CMRTy

pe; DB table: ism.eu _device _cmr_c ategory _typeRequire d for Substa nces of type 'CMR Substa nce', non

mandat

ory for other types.

— Optiona

l

— Optiona

l

Entity

Name

API/Controller endpoint API 7.2 Updates Descriptio n
Attribute Column Class/Table
Manufact urer SourceRestCo ntroller(read only) /data-admin/ source

The following fields are added:

— dunsSrnN umber

— authorize dReprese nt ativeNam e

— ORGANIZAT ION_IDENT

IFIER2

— AUTHORIZE D_REPRESE

NTATIVE_N

AME

Classname:So

urce

— DB table:

ISM.SOURC

E

— DB view:

ISM.DV_SO

URCE

— Optiona

l

— Optiona

l

Manufact ured Item

ManufacturedI

temRestContr

oller

/

manufactured

-item

The following fields are changed:

— quantityV alue

— quantityU nit

Classname:

Manufactured

Item

— ISM.MANUF ACTURED_I

TEM

— ISM.DV_MA NUFACTUR

ED_ITEM

— The

field is

change d from require d to optiona l and to accept float values (up to 5 digits then '.'

then up to 5 digits. Negativ e values are not permitt ed.

— The

field is

change d to

optiona

l.

Entity

Name

API/Controller endpoint API 7.2 Updates Descriptio n
Attribute Column Class/Table

PDS

Substance

Detail

SubstanceDet ailRestControll er /detail/ substance

The following fields are added:

— originOfSu bstanceId

— compositi onGroupin

gDescripti on

— concentra tionMeasu reTypeId

— SUBSTANCE

_ORIGIN_T YPE_ID

— COMPOSITI

ON_GROUPI

NG_DESCRI

PTION

— ISM.CONCE

NTRATION_

VALUE.CON

CENTRATIO

N_MEASUR

E_TYPE_ID

Classname

ActiveIngredie ntDetail

— DB table:

ISM.PDS_S UBSTANCE

_CHANGE

— DB view:

ISM.DV_PD

S_SUBSTA

NCE

— Optiona

l.This field is foreign key to: Class name: OriginO fSubsta nce / ISM.SU

BSTAN

CE_ORI

GIN_TY PE compo

sitionGr ouping Descrip tion /

COMPO

SITION

_GROU

PING_

DESCRI PTION.

— Optiona

l

Entity

Name

API/Controller endpoint API 7.2 Updates Descriptio n
Attribute Column Class/Table

PDS

ActiveIngr

edientDet

ail

ActiveIngredie ntDetailRestCo ntroller /detail/ai

The following fields are added:

— originOfSu bstanceId

— compositi onGroupin

gDescripti on

— SUBSTANCE

_ORIGIN_T YPE_ID

— COMPOSITI

ON_GROUPI

NG_DESCRI

PTION

Class Name: ActiveIngredie ntDetail

— DB table:

ISM.PDS_A

CTING_CHA

NGE

— DB view:

ISM.DV_PD

S_ACTING

— This

field is foreign key to: Class name: OriginO fSubsta nce / ISM.SU

BSTAN

CE_ ORIGIN _TYPE. Optiona

l.

— Optiona

l.

FluStrainD etail FluStrainDetail RestController /detail/flustrain

The following field is added:

concentratio nMeasureTy peId

ISM.CONCENT

RATION_VALU

E.CONCENTRA

TION_MEASUR

E_TYPE_ID

Manufact uredItem Substance

ManufacturedI temSubstance

RestController

/productfamily/ product/ component/ manufactured -item/ substance

The following field is added:

с

oncentration MeasureTyp eId

ISM.CONCENT

RATION_VALU

E.CONCENTRA

TION_MEASUR

E_TYPE_ID

Entity

Name

API/Controller endpoint API 7.2 Updates Descriptio n
Attribute Column Class/Table

Manufact uredItem Reference

Substance

ManufacturedI temReference SubstanceRest

Controller

/productfamily/ product/ component/ manufactured -item/ substance/ reference The following fied is added: concentratio nMeasureTy peId

ISM.CONCENT

RATION_VALU

E.CONCENTRA

TION_MEASUR

E_TYPE_ID

Manufact uredItem ActiveIngr edient

ManufacturedI temActiveIngr

edientRestCon

troller

/productfamily/ product/ component/ manufactured -item/activeingredient

The following field is added:

concentratio nMeasureTy peId

ISM.CONCENT

RATION_VALU

E.CONCE

NTRATION_ME

ASURE_TYPE_I

D

Manufact uredItem

RefActiveI ngredient

ManufacturedI temRefActiveI ngredientRest

Controller

/productfamily/ product/ component/ manufactured -item/activeingredient/ reference

The following field is added:

concentratio nMeasureTy peId

ISM.CONCENT

RATION_VALU

E.CONCENTRA

TION_MEASUR

E_TYPE_ID

Strength StrengthRestC ontroller /strength

The following field is added:

concentratio nMeasureTy peId

ISM.CONCENT

RATION_VALU

E.CONCENTRA

TION_MEASUR

E_TYPE_ID

Reference Strength

ReferenceStre

ngthRestContr oller

/referencestrength

The following field is added:

concentratio nMeasureTy peId

ISM.CONCENT

RATION_VALU

E.CONCENTRA

TION_MEASUR

E_TYPE_ID

Entity

Name

API/Controller endpoint API 7.2 Updates Descriptio n
Attribute Column Class/Table
XPharmaP roductSub stance XPharmaProdu ctSubstanceRe stController

— /product/ xpharmaproduct

— /xpharmaproductsubstance

The following field is added:

concentratio nMeasureTy peId

ISM.CONCENT

RATION_VALU

E.CONCENTRA

TION_MEASUR

E_TYPE_ID

XPharmaP roductRef Substance

XPharmaProdu ctRefSubstanc

eRestControlle

r

— /product/ xpharmaproduct

— /xpharmaproductsubstance/ reference

The following field is added:

concentratio nMeasureTy peId

ISM.CONCENT

RATION_VALU

E.CONCENTRA

TION_MEASUR

E_TYPE_ID

XPharmaP roductActi veIngredi ent

XPharmaProdu ctActiveIngred

ientRestContro

ller

— /product/ xpharmaproduct

— /xpharmaproductactiveingredient

The following fields are added:

— concentra tionMeasu reTypeId

— substance Id

— ISM.CONCE

NTRATION_

VALUE.CON

CENTRATIO N_MEASUR

E_TYPE_ID

— ISM.SUBST ANCE.ID

XPharmaP roductRef ActiveIngr edient XPharmaProdu ctRefActiveIng redientRestCo ntroller

— /product/ xpharmaproduct

— /xpharmaproductactiveingredient

The following field is added:

concentratio nMeasureTy peId

ISM.CONCENT

RATION_VALU

E.CONCENTRA

TION_MEASUR

E_TYPE_ID

Ennov InSight 7.2 Data Administration Lists - APIs CUD Operations

List of Data Administration entities supported by API Create, Update, Delete (CUD) operations.

Table 3: Data Administration Lists

Data Administration Section Data Administration Section List Name
Application Maintenance Age Span Population Values
Application Category Values
CTA Product Role Values
MedDRA Term Values
Medical Condition Investigated Values
Product Information Document Type Values
Reason for Premature Ending Values
Region Type Values
Assembly Assembly Category Values
Change Maintenance Change Type Values
Custom List Maintenance Custom List Names
Custom List Values
DMS Integration Bind to Label Values
Bind to Status Values
Rendition Identifier Values
Event Maintenance ActionType Values
Event Type Values
Other Application Submission Type Values
Attached Document Content Type Values
Denominator Unit Values
Data Administration Section Data Administration Section List Name
Product Detail Set Maintenance Color Values
Compendial Designation/Source Values
Data Classification Type Values
Device – Type of Combination Values
Dose Frequency Values
Human Consumption Product Values
Intended Effect Values
Label Type Values
Manufacturing Functions Values
Medical Device UDI Values
Medical Device Part Code Values
Origin of Substance Values
Product Material Values
Production Type Values
Shape Values
Shelf Life Category Values
Species Values
Storage Condition Values
Substance Values > Substance International Codes
Product Family Maintenance Domain Type Values
Data Administration Section Data Administration Section List Name
Product Maintenance Applicable Standards Values
Conformity Assessment Body Values
Conformity Assessment Path Values
Device Allergenicity Values
Device Sterility Indicator Values
EC Cert Values
Global Harmonization Task Force (GHTF) Class Values
Manufacturing Location Values
Product Category Type Values
Product Cross Reference Type Values
Cross Reference Type Values
Sterilization Values
Publishing Requirements Maintenance Electronic Format Requirement Values
Registration Maintenance Medicinal Product Name Part Type Values
Provenance Reason Values
Marketing Status Values
Master File Type Values
Component Type Values
Content of Change Values
Risk of Supply of Shortage Reason Values
Medical Product Actions/Submission Status Values
Applicant Contact Values
Qualified Person Responsible for Pharmacovigilance (QPPV) Values
Submission Maintenance Applicant Contact Type Values
Promotional Material Audience Type Values
Promotional Material Type Values

Ennov InSight 7.2 API End Points Entities Added

The API End Points for Data Administration entities added to the Ennov InSight 7.2.

Endpoints

put("meddra-term-type", DataAdminEntityConfig.builder()

.metaClassName(MeddraTermType.CLASSNAME)

.build());

put("medical-condition-type", DataAdminEntityConfig.builder()

.metaClassName(MedicalConditionType.CLASSNAME)

.build());

put("medical-device-udi", DataAdminEntityConfig.builder()

.metaClassName(MedicalDeviceUDI.CLASSNAME)

.build());

put("medicinal-product-name-part-type", DataAdminEntityConfig.builder()

.metaClassName(MedicinalProductNamePartType.CLASSNAME)

.build());

put("part-code", DataAdminEntityConfig.builder()

.metaClassName(PartCode.CLASSNAME)

.build());

put("premature-ending-type", DataAdminEntityConfig.builder()

.metaClassName(PrematureEndingType.CLASSNAME)

.build());

put("product-category", DataAdminEntityConfig.builder()

.metaClassName(ProductCategory.CLASSNAME)

.build());

put("product-cross-reference-type", DataAdminEntityConfig.builder()

.metaClassName(ProductCrossReferenceType.CLASSNAME)

.build());

put("product-information-document-type", DataAdminEntityConfig.builder()

.metaClassName(ProductInformationDocumentType.CLASSNAME)

.build());

put("provenance-reason", DataAdminEntityConfig.builder()

.metaClassName(ProvenanceReason.CLASSNAME)

.build());

put("reference-type", DataAdminEntityConfig.builder()

.metaClassName(ReferenceType.CLASSNAME)

.build());

put("region-type", DataAdminEntityConfig.builder()

.metaClassName(RegionType.CLASSNAME)

.build());

put("rendition-identifier", DataAdminEntityConfig.builder()

.metaClassName(RenditionIdentifier.CLASSNAME)

.build());

put("sterilization-type", DataAdminEntityConfig.builder()

.metaClassName(SterilizationType.CLASSNAME)

.build());

put("storage-conditions", DataAdminEntityConfig.builder()

.metaClassName(StorageConditions.CLASSNAME)

.build());

put("application-submission-type", DataAdminEntityConfig.builder()

.metaClassName(ApplicationSubmissionType.CLASSNAME)

.build());

put("attached-document-content-type", DataAdminEntityConfig.builder()

.metaClassName(AttachedDocumentContentType.CLASSNAME)

.build());

put("bind-label", DataAdminEntityConfig.builder()

.metaClassName(BindLabel.CLASSNAME)

.build());

put("bind-status", DataAdminEntityConfig.builder()

.metaClassName(BindStatus.CLASSNAME)

.build());

put("material-type", DataAdminEntityConfig.builder()

.metaClassName(MaterialType.CLASSNAME)

.build());

put("ec-cert-type", DataAdminEntityConfig.builder()

.metaClassName(ECCertType.CLASSNAME)

.build());

put("electronic-format-requirement-type", DataAdminEntityConfig.builder()

.metaClassName(ElectronicFormatRequirementType.CLASSNAME)

.build());

put("event-type", DataAdminEntityConfig.builder()

.metaClassName(EventType.CLASSNAME)

.build());

put("ghtf-type", DataAdminEntityConfig.builder()

.metaClassName(GHTFType.CLASSNAME)

.build());

put("human-consumption-products", DataAdminEntityConfig.builder()

.metaClassName(HumanConsumptionProducts.CLASSNAME)

.build());

put("intended-effect-type", DataAdminEntityConfig.builder()

.metaClassName(IntendedEffectType.CLASSNAME)

.build());

put("label-type", DataAdminEntityConfig.builder()

.metaClassName(LabelType.CLASSNAME)

.build());

put("manufacturing-location-type", DataAdminEntityConfig.builder()

.metaClassName(ManufacturingLocationType.CLASSNAME)

.build());

put("marketing-status", DataAdminEntityConfig.builder()

.metaClassName(MarketingStatus.CLASSNAME)

.build());

put("master-file-type", DataAdminEntityConfig.builder()

.metaClassName(MasterFileType.CLASSNAME)

.build());

put("component-type", DataAdminEntityConfig.builder()

.metaClassName(ComponentType.CLASSNAME)

.build());

put("conformity-assessment-body-type", DataAdminEntityConfig.builder()

.metaClassName(ConformityAssessmentBodyType.CLASSNAME)

.build());

put("source-authorisation", DataAdminEntityConfig.builder()

.metaClassName(SourceAuthorisation.CLASSNAME)

.createFieldGroup("dataExchangeADD")

.updateFieldGroup("dataExchangeUPDATE")

.build());

put("content-of-change-type", DataAdminEntityConfig.builder()

.metaClassName(ContentOfChangeType.CLASSNAME)

.build());

put("risk-supply-shortage-reason", DataAdminEntityConfig.builder()

.metaClassName(RiskOfSupplyShortageReason.CLASSNAME)

.build());

put("promotional-material-audience-type", DataAdminEntityConfig.builder()

.metaClassName(PromotionalMaterialAudienceType.CLASSNAME)

.build());

put("promotional-material-doc-type", DataAdminEntityConfig.builder()

.metaClassName(PromotionalMaterialDocType.CLASSNAME)

.build());

put("custom-list-value", DataAdminEntityConfig.builder()

.metaClassName(CustomListValue.CLASSNAME)

.createFieldGroup("dataExchangeADD")

.updateFieldGroup("dataExchangeUPDATE")

.build());

put("application-category", DataAdminEntityConfig.builder()

.metaClassName(ApplicationCategory.CLASSNAME)

.build());

put("applicant-contact-type", DataAdminEntityConfig.builder()

.metaClassName(ApplicantContactType.CLASSNAME)

.build());

put("age-span-type", DataAdminEntityConfig.builder()

.metaClassName(AgeSpanType.CLASSNAME)

.build());

put("color", DataAdminEntityConfig.builder()

.metaClassName(Color.CLASSNAME)

.build());

put("shape", DataAdminEntityConfig.builder()

.metaClassName(Shape.CLASSNAME)

.build());

put("production-type", DataAdminEntityConfig.builder()

.metaClassName(ProductionType.CLASSNAME)

.build());

put("origin-of-substance", DataAdminEntityConfig.builder()

.metaClassName(OriginOfSubstance.CLASSNAME)

.build());

put("dose-frequency", DataAdminEntityConfig.builder()

.metaClassName(DoseFrequency.CLASSNAME)

.build());

put("gm-cell-origin-species-type", DataAdminEntityConfig.builder()

.metaClassName(GMCellOriginSpeciesType.CLASSNAME)

.build());

put("somatic-cell-therapy-type", DataAdminEntityConfig.builder()

.metaClassName(SomaticCellTherapyType.CLASSNAME)

.build());

put("cell-origin-species-type", DataAdminEntityConfig.builder()

.metaClassName(CellOriginSpeciesType.CLASSNAME)

.build());

put("somatic-cell-therapy-origin-type", DataAdminEntityConfig.builder()

.metaClassName(SomaticCellTherapyOriginType.CLASSNAME)

.build());

put("scientific-source-type", DataAdminEntityConfig.builder()

.metaClassName(ScientificSourceType.CLASSNAME)

.build());

put("shelf-life-category", DataAdminEntityConfig.builder()

.metaClassName(ShelfLifeCategory.CLASSNAME)

.build());

put("species-type", DataAdminEntityConfig.builder()

.metaClassName(SpeciesType.CLASSNAME)

.build());

put("compendial-designation", DataAdminEntityConfig.builder()

.metaClassName(CompendialDesignation.CLASSNAME)

.build());

put("product-material", DataAdminEntityConfig.builder()

.metaClassName(ProductMaterial.CLASSNAME)

.build());

put("manufacturer-function", DataAdminEntityConfig.builder()

.metaClassName(ManufacturerFunction.CLASSNAME)

.build());

put("substance-international-codes", DataAdminEntityConfig.builder()

.metaClassName(SubstanceInternationalCodes.CLASSNAME)

.build());

put("custom-list", DataAdminEntityConfig.builder()

.metaClassName(CustomListName.CLASSNAME)

.build());

put("applicable-standards", DataAdminEntityConfig.builder()

.metaClassName(ApplicableStdsType.CLASSNAME)

.build());

put("medical-product-action-submission-

status", DataAdminEntityConfig.builder()

.metaClassName(MedicalProductActionType.CLASSNAME)

.build());

put("applicant-contact-email", DataAdminEntityConfig.builder()

.metaClassName(ApplicantContactEmail.CLASSNAME)

.build());

put("applicant-contact", DataAdminEntityConfig.builder()

.metaClassName(ApplicantContact.CLASSNAME)

.build());

put("applicant-contact-phone", DataAdminEntityConfig.builder()

.metaClassName(ApplicantContactPhone.CLASSNAME)

.build());

put("qppv", DataAdminEntityConfig.builder()

.metaClassName(Qppv.CLASSNAME)

.build());

put("manufacturing-function-globaldetail", DataAdminEntityConfig.builder()

.metaClassName(ManufacturingFunctionGlobalDetail.CLASSNAME)

.createFieldGroup("apiCreateFieldGroup")

.updateFieldGroup("dataExchangeUPDATE")

.parentFieldName(ManufacturingFunctionGlobalDetail.SOURCEID)

.build());

put("raw-material-global-detail", DataAdminEntityConfig.builder()

.metaClassName(RawMaterialGlobalDetail.CLASSNAME)

.createFieldGroup("apiCreateFieldGroup")

.updateFieldGroup("dataExchangeUPDATE")

.parentFieldName(RawMaterialGlobalDetail.SOURCEID)

.build());

put("packaging-global-detail", DataAdminEntityConfig.builder()

.metaClassName(PackagingGlobalDetail.CLASSNAME)

.createFieldGroup("apiCreateFieldGroup")

.updateFieldGroup("dataExchangeUPDATE")

.parentFieldName(PackagingGlobalDetail.SOURCEID)

.build());

put("substance-global-detail", DataAdminEntityConfig.builder()

.metaClassName(SubstanceGlobalDetail.CLASSNAME)

.createFieldGroup("apiCreateFieldGroup")

.updateFieldGroup("dataExchangeUPDATE")

.parentFieldName(SubstanceGlobalDetail.SOURCEID)

.build());

put("change-type", DataAdminEntityConfig.builder()

.metaClassName(ChangeType.CLASSNAME)

.build());

put("change-reason", DataAdminEntityConfig.builder()

.metaClassName(ChangeReason.CLASSNAME)

.build());

put("action-type", DataAdminEntityConfig.builder()

.metaClassName(ActionType.CLASSNAME)

.build());

put("assembly-category", DataAdminEntityConfig.builder()

.metaClassName(AssemblyCategory.CLASSNAME)

.build());

put("conform-assess-path-type", DataAdminEntityConfig.builder()

.metaClassName(ConformAssessPathType.CLASSNAME)

.build());

put("cta-product-role-type", DataAdminEntityConfig.builder()

.metaClassName(CTAProductRoleType.CLASSNAME)

.build());

put("denominator-unit-type", DataAdminEntityConfig.builder()

.metaClassName(DenominatorUnitType.CLASSNAME)

.build());

put("device-allergenicity", DataAdminEntityConfig.builder()

.metaClassName(DeviceAllergenicity.CLASSNAME)

.build());

put("device-combination-type", DataAdminEntityConfig.builder()

.metaClassName(DeviceCombinationType.CLASSNAME)

.build());

put("device-sterility-indicator", DataAdminEntityConfig.builder()

.metaClassName(DeviceSterilityIndicator.CLASSNAME)

.build());

put("domain-type", DataAdminEntityConfig.builder()

.metaClassName(DomainType.CLASSNAME)

.build());

put("data-classification-type", DataAdminEntityConfig.builder()

.metaClassName(DataClassificationType.CLASSNAME)

.build());

Ennov InSight 7.2 Read-Only API Entities

The list of read-only API entities.

Table 4: Read-Only API Entities

These entities do not support the following endpoints: /create, /update, /create-or-update, / delete/{id}.

API Entity Name
ApplicantID
ApplicationFormType
ApplicationStatus
ApplicationType
AssemblyStatus
AssemblySubcategory
BioType
ConcentrationMeasureType
API Entity Name
CountryHealthAuthority
CountryLeadTime
CountryRegion
CountrySpecificDetailType
CountrySpecificDetailValue
DataClassificationType
DeviceType
DeviceUsage
DivisionType
DossierType
DtdAppTypeEctd
DtdEffDateTypeEctd
DtdSeqTypeEctd
DtdSubTypeEctd
EmaAuthStatus
EntityXMLType
EUClassificationRuleType
EuGroupingType
EurdType
EventChangeDetailStatus
EventMilestones
EventPlanType
EventStatus
EvmpdCodeMappingReadOnly
FilingType
GeneTherapyTransProdType
GeneTherapyType
GMCellOriginType
InternalTypeView
InvestigatorType
API Entity Name
Language
LeafStatus
LegalBasisType
LegalStatus
LengthUnitOfMeasure
MahSponsor
MahSponsorEvmpdCodeMapping
ManufacturerFunction
MasterFileLocationType
MedicalDeviceType
MedicinalProductType
MessageSender
NumeratorUnitType
OmsOrgLocation
PdfProperty
PreviousEvCode
ProductCharacteristics
ProductDetailSetStatus
ProductFamilyStatus
ProductStatus
ProductStrengthUnit
ProjectStatus
ProjectType
PromotionalMaterialType
Property
PsurReportCode
QCStatus
QuantityUnitOfMeasure
RawMaterial
ReferenceContent
API Entity Name
ReferencedDTDType
ReferenceParticipant
ReferenceStatus
RegistrationStatus
RegulatoryActingLeadType
RegulatoryEntitlementStatus
RegulatoryEntitlementType
RenditionIdentifierValues
RmsApplicationLegalBasis
RmsApplicationSubmissionType
RmsAtcHuman
RmsCombinationPackage
RmsCombinedPharmaDoseForm
RmsCombinedTerm
RmsContactPartyRoleController
RmsCountry
RmsDataClassificationController
RmsDomain
RmsEURegulatoryAuthorisationProcedure
RmsIngredientRole
RmsLanguage
RmsLegalStatusSupply
RmsManufacturingActivity
RmsMarketingStatus
RmsMasterFileType
RmsMaterialController
RmsMedicalDictionaryForRegActivitiesController
RmsMedicalProductNamePartTypeController
RmsPackagingController
RmsPharmaDoseForm
API Entity Name
RmsProductCategoryController
RmsProductCrossReferenceType
RmsProductInformationDocumentTypeController
RmsQuantityOperator
RmsReasonForMarketingUnavailability
RmsRegulatoryEntitlementStatusController
RmsRegulatoryEntitlementTypeController
RmsRoutesAndMethodsOfAdministration
RmsShelfLifeTypeController
RmsSpecialPrecautionForStorage
RmsUnitsOfMeasurement
RmsUnitsOfPresentation
RmsXevmpdMedicalDevices
RmsXevmpdMedicinalProductType
SecondaryEvent
SequenceDescriptionType
SequenceStatus
ShelfLifeType
SmeStatus
SmsSubstance
Source
SpecialMeasure
SterilizationRequirement
StudySponsorType
SubFilingType
SubIndication
SubmissionPlanStatus
SubstanceLevelClass
SubstanceRoleType
SubstanceType
API Entity Name
SummaryOfTechdocType
SupplementEffectiveDateType
SystemAlertSubjectType
TabFontType
TaskPriority
TaskStatus
TaskSubtype
TaskType
TelephoneNumberType
TermWithdrawalReason
TherapeuticArea
TherapyClass
TrialDesignType
TrialPhaseType
TrialScopeType
TrialSubjectGroupType
UMDNSType
UnitOfMeasurement
UnitOfMeasurePrefix
UnitOfPresentation
ValidStatusProgressions
VariableRepository
VariableSystem
VariableUser
VolumeUnitOfMeasure
WeightUnitOfMeasure

Ennov InSight 7.1.3 API Changes

This table describes the API changes for Ennov InSight 7.1.3.

Ennov InSight 7.1.3 includes the following API support.

Entity Name

API/

Controller

endpoint API Ennov InSight 7.1.3 updates Description
Attribute Column
License

PackageSetT ypeRegistrati

onRestContr

oller

license/ packagesetregistration Added "/all", "/query" endpoints
ProductLicen se ProductType RegistrationR estController license/ productregistration Added "/all", "/query" endpoints
FullProductP resentation LicenseFppC ontroller license/fullproductpresentation Added "/all", "/query" endpoints
LicensePack ageSet LicensePack ageSetContr oller license/ packageset Added "/all", "/query" endpoints

LicensePack

ageSetCount ry

LicensePack ageSetCount

ryRestContro

ller

license/ packageset/ country Added "/all", "/query" endpoints
Entity Name

API/

Controller

endpoint API Ennov InSight 7.1.3 updates Description
Attribute Column
AppCountry ApplicationC ountryRestC ontroller /applicationcountry

The following fields are added: — localStartTrial

— localFirstVisit

— localEndOfRec ruitment

— localEndOfTrial

— localTemporar yHalted

— localRestartTe mporaryHalted

— localEarlyTerm inationReasonI d

— localEarlyTerm inationReasonI d

— LOCAL_START

_OF_TRIAL_DA TE

— LOCAL_FIRST_

VISIT_OF_FIRS

T_SUBJECT_D

ATE

— LOCAL_END_O F_RECRUITME

NT_DATE

— LOCAL_END_O

F_TRIAL_DATE

— LOCAL_TEMP_ HALT_DATE

— LOCAL_RESTA RT_OF_TEMP_

HALTED_TRIAL

— LOCAL_EARLY

_TERM_DATE

— TERM_WITH_R EASON_TYPE_

ID

— DB

table: .ISM.AP

P_COUNTRY

— DB view:

ISM.DV_APP_C

OUNTRY

Comparison Table API changes between Ennov InSight 7.1.3 and Ennov InSight 7.1

This table describes the API changes between Ennov InSight 7.1.3 and Ennov InSight 7.1.

Entity Name API/Controller endpoint API 7.1.3 Updates Description
Attribute Column
License PackageSetTypeR egistrationRestCo ntroller license/ packagesetregistration Added "/all", "/ query" endpoints
ProductLice nse ProductTypeRegi strationRestContr oller license/productregistration Added "/all", "/ query" endpoints
FullProduct Presentatio n

LicenseFppContro

ller

license/fullproductpresentation Added "/all", "/ query" endpoints
Entity Name API/Controller endpoint API 7.1.3 Updates Description
Attribute Column
LicensePack ageSet LicensePackageS etController license/ packageset Added "/all", "/ query" endpoints

LicensePack

ageSetCoun

try

LicensePackageS

etCountryRestCo ntroller

license/ packageset/ country Added "/all", "/ query" endpoints
AppCountry ApplicationCountr yRestController /applicationcountry

The following fields are added:

— localStartTria

l

— localFirstVisit

— localEndOfRe cruitment

— localEndOfTri al

— localTempora ryHalted

— localRestartT emporaryHalt ed

— localEarlyTer minationReas onId

— localEarlyTer minationReas onId

— LOCAL_START

_OF_TRIAL_DA TE

— LOCAL_FIRST _VISIT_OF_FI

RST_SUBJECT

_DATE

— LOCAL_END_O F_RECRUITME

NT_DATE

— LOCAL_END_O

F_TRIAL_DATE

— LOCAL_TEMP_ HALT_DATE

— LOCAL_RESTA RT_OF_TEMP_

HALTED_TRIA

L

— LOCAL_EARLY _TERM_DATE

— TERM_WITH_

REASON_TYPE

_ID

— DB

table: .IS

M.APP_C

OUNTRY

— DB view: ISM.DV_

APP_COU

NTRY

Ennov InSight 7.1 API Changes

This table describes the API changes for Ennov InSight 7.3.

Ennov InSight 7.1 includes the following API support.

Entity Name API/Controller Main endpoit Description
OrphanDesignation OrphanDesignationRe stController /orphan-designation
Entity Name API/Controller Main endpoit Description
EurdType EurdTypeRestControll er /data-admin/eurdtype
DomainType

DomainTypeRestCont

roller

/data-admin/domaintype
ContentOfChangeTyp eRestController /content-of-changetype
MedicalProductAction TypeRestController /medical-productaction-submissionstatus
AttachedDocument LicenseAttachedDocu mentRestController /license/attacheddocument

Hierarchy: Application-

>License-

>MedicinalProductAction>AttachedDocument

ManufacturedItem ManufacturedItemRe stController /product-family/ product/component/ manufactured-item
ManufacturedItemSu bstance

ManufacturedItemSu

bstanceRestControlle

r

/product-family/ product/component/ manufactured-item/ substance
ManufacturedItemRef erenceSubstance ManufacturedItemRef erenceSubstanceRest Controller /product-family/ product/component/ manufactured-item/ substance/reference

LicensePackageSetNa

me

LicensePackageSetNa meRestController /license/packageset/ name

Hierarchy: Application-

>License-

>LicensePackageSetName

MedicinalProduct LicenseMedicinalProd uctController /license/medicinalproduct

Hierarchy: Application-

>License-

>MedicinalProductAction

MedicinalProductActi on MedicinalProductActi onRestController /license/medicinalproduct-action
Mpname MedicinalProductMpn ameRestController /license/medicinalproduct/mpname
MedicinalProductCros sReference

MedicinalProductCros

sReferenceRestContr oller

/license/medicinalproduct/

medicinalProductCros sReference

Entity Name API/Controller Main endpoit Description
DataCarrierType DataCarrierTypeRestC ontroller /data-admin/datacarrier-type
DataClassificationTyp e DataClassificationTyp eRestController /data-admin/dataclassification-type
MarketingStatusReas on MarketingStatusReas onRestController /data-admin/ marketing-statusreason
RmsApplicationLegal BasisRestController /data-admin/rmsapp-legal-basis

RmsApplicationSubmi

ssionTypeRestControl ler

/data-admin/rmsapp-submission-type

RmsAtcHumanRestCo

ntroller

/data-admin/rms-atchuman
RmsCombinationPack ageRestController /data-admin/rmscombination-package

RmsCombinedPharma DoseFormRestControl

ler

/data-admin/rmscombined-pharmadose-form

RmsCombinedTermR

estController

/data-admin/rmscombined-term
RmsContactPartyRole Controller /data-admin/rmscontact-party-role

RmsCountryRestContr

oller

/data-admin/rmscountry

RmsDomainRestContr

oller

/data-admin/rmsdomain
RmsEURegulatoryAut horisationProcedureR estController /data-admin/rms-euregulatory-authorityprocedure
RmsIngredientRoleRe stController /data-admin/rmsingredient-role

RmsLanguageRestCo

ntroller

/data-admin/rmslanguage
RmsLegalStatusSuppl yRestController /data-admin/rmslegal-status-supply
Entity Name API/Controller Main endpoit Description
RmsManufacturingAct ivityRestController /data-admin/rmsmanufacturingactivity
RmsMarketingStatusR estController /data-admin/rmsmarketing-status
RmsMasterFileTypeR estController /data-admin/rmsmaster-file-type
RmsMedicalProductN amePartTypeControll er /data-admin/rmsmedical-productname-part-type

RmsPackagingControl

ler

/data-admin/rmspackaging
RmsPharmaDoseFor mRestController /data-admin/rmspharma-dose-form

RmsProductCategory

Controller

/data-admin/rmsproduct-category

RmsProductCrossRef

erenceTypeRestContr

oller

/data-admin/rmsproduct-crossreference
RmsQuantityOperator RestController /data-admin/rmsquantity-operator
RmsRegulatoryEntitle mentTypeController /data-admin/rmsregulatoryentitlement-type
RmsRegulatoryEntitle mentStatusConstoller /data-admin/rmsregulatoryentitlement-status
RmsRoutesAndMetho dsOfAdministrationRe stController /data-admin/rmsroutes-methodsadministration
RmsShelfLifeControlle r /data-admin/rmsshelf-life-type

RmsSpecialPrecautio

nForStorageRestContr oller

/data-admin/rmsspecial-precautionstorage
Entity Name API/Controller Main endpoit Description
RmsUnitsOfMeasure mentRestController

/data-admin/rmsunits-of-

measurement

RmsUnitsOfPresentati onRestController /data-admin/rmsunits-of-presentation
RmsXevmpdMedicalD evicesRestController /data-admin/rmsxevmpd-medicaldevices

RmsXevmpdMedicinal ProductTypeRestCont

roller

/data-admin/rmsxevmpd-medicinalproduct-type

RmsProductInformati

onDocumentControlle r

/data-admin/rmsproduct-informationdocument-type

RmsMaterialControlle

r

/data-admin/rmsmaterial/
RmsMedicalDictionary ForRegActivitiesContr oller /data-admin/rmsmedical-dictionaryfor-regulatoryactivities/
RmsDataClassificatio nController /data-admin/rmsdata-classification Data Classification Spor entity
SourceAuthorisation SourceAuthorisationR estController /data-admin/sourceauthorisation parent is source/ manufacturer
OmsOrgLocation

OmsOrgLocationRest

Controller

data-admin/omsorglocation

This entity is a combination of two EMA entities:

Organization and Location, which contains the fields of both entities:

— number of records = number of Locations per Organizsation

— entityId is

ISM.TERMINOLOGY_SYST

EM_LIST_MEMBER.ID

Entity Name API/Controller Main endpoit Description
DeviceCombinationTy pe DeviceCombinationTy peRestController /data-admin/devicecombination-type This entity corresponds to the field "Device - Type of Combination" of the "Medical Device" Detail and mapped to SPOR master data set.
PhpId PhpIdRestController /product/xpharmaproduct/php-id
ContentOfChangeTyp eRestController /content-of-changetype
MedicalProductAction TypeRestController /medical-productaction-submissionstatus
PharmaProductSubst ance XPharmaProductSubs tanceRestController /product/xpharmaproduct/xpharmaproduct-substance
PharmaProductRefSu bstance

XPharmaProductRefS ubstanceRestControll

er

/product/xpharmaproduct/xpharmaproduct-substance/ reference
PharmaProductActive Ingredient

XPharmaProductActiv

eIngredientRestContr

oller

/product/xpharmaproduct/xpharmaproduct-activeingredient
PharmaProductRefAct iveIngredient XPharmaProductRefA ctiveIngredientRestCo ntroller /product/xpharmaproduct/xpharmaproduct-activeingredient/reference
PackSizeDetail PackSizeDetailRestCo ntroller /pack-size New detail under PDS -> Package Set
PackageComponent PackageComponentR estController /data-admin/ package-component New Data Administration entity
ComponentType

ComponentTypeRest

Controller

/data-admin// component-type New Data Administration entity
RegulatoryEntitlemen tStatus RegulatoryEntitlemen tStatusRestController /data-admin/ regulatoryentitlement-status New Data Administration entity
ProvenanceReason ProvenanceReasonRe stController /data-admin/ provenance-reason New Data Administration entity
Entity Name API/Controller Main endpoit Description
ProductInformationD ocumentType

ProductInformationD

ocumentTypeRestCon

troller

/data-admin/productinformationdocument-type New Data Administration entity
ProductCrossReferen ceType ProductCrossReferen ceTypeRestController /data-admin/productcross-reference-type New Data Administration entity
ProductCategory ProductCategoryRest Controller /data-admin/productcategory New Data Administration entity
PediatricIndicator PediatricIndicatorRes tController /data-admin/ pediatric-indicator New Data Administration entity
MedicinalProductNam ePartType

MedicinalProductNam

ePartTypeRestControl ler

/data-admin/ medicinal-productname-part-type New Data Administration entity
MedicalDeviceUDI MedicalDeviceUDIRes tController /data-admin/medicaldevice-udi New Data Administration entity
MasterFileType MasterFileTypeRestC ontroller /data-admin/masterfile-type New Data Administration entity
MarketingStatus MarketingStatusRestC ontroller /data-admin/ marketing-status New Data Administration entity
DeviceTypeofCombin ation DeviceTypeofCombin ationRestController /data-admin/devicetype-of-combination New Data Administration entity
AttachedDocumentCo ntentType AttachedDocumentCo ntentTypeRestControl ler /data-admin/ attached-documentcontent-type New Data Administration entity
ApplicationSubmissio nType ApplicationSubmissio nTypeRestController /applicationsubmission-type New Data Administration entity

Comparison Table API Changes between Ennov InSight 7.1 and Ennov InSight 7.0

This table describes the API changes between Ennov InSight 7.1 and Ennov InSight 7.0.

Entity Name API/Controller Endpoint API 7.3 Updates Description
Attribute Column
License PackageSetTypeR egistrationRestCo ntroller "/license/ packagesetregistration"

The following field is added:

— atcFlag

— column

ATC_FLAG

— size 1

— values "T", "F", "X"

<attr name="T ">title .licens e.atcFl ag.appl ied</ attr> <attr name="F ">title .licens e.atcFl ag.notA pplied< /attr> <attr name="X ">title .licens e.atcFl ag.notA pplicab le</ attr>
Entity Name API/Controller Endpoint API 7.3 Updates Description
Attribute Column
ProductLice nse ProductTypeRegi strationRestContr oller "/license/ productregistration"

The following field is added:

— atcFlag

— column

ATC_FLAG

— size 1

— values "T", "F", "X"

<attr name="T ">title .licens e.atcFl ag.appl ied</ attr> <attr name="F ">title .licens e.atcFl ag.notA pplied< /attr> <attr name="X ">title .licens e.atcFl ag.notA pplicab le</ attr>
Entity Name API/Controller Endpoint API 7.3 Updates Description
Attribute Column
LicensePack ageSet LicensePackageS etController "/license/ packageset"

The EU Presentation Number is renamed to Package Set

License Code.

euPresentationN umber/

EU_PRESENTATI

ON_NUMBER size 100 changed to packageSetLicens eCode/ LICENSE_CODE size 100

licenseCode/

PACKSET_LICEN SE_CODE mapping changed to licenseCode/

REGISTRATION_

CODE

The following fields are added:

— legalBasisId

— authorisation StatusId

— authorisation StatusDate

— LEGAL_BASIS _TYPE_ID

This field is foreign key to: Class name: LegalBasisTyp e

DB table:

ism.legal_basi s_type.

— AUTHORISATI

ON_STATUS_T

YPE_ID

This field is foreign key to: Class name: RegistrationSt atus

DB table:

ism.lic_status_ type.

— AUTHORISATI

ON_STATUS_D

ATE

Entity Name API/Controller Endpoint API 7.3 Updates Description
Attribute Column

LicensePack

ageSetCoun

try

LicensePackageS

etCountryRestCo ntroller

"/license/ packageset/ country"

The following fields are added:

— dataCarrierTy pe

— dataCarrierId entifier

— dataCarrierLa nguageId

— riskOfSupply ShortageFlag

— riskOfSupply ShortageCom ment

— marketingSta tusReasonTy peId

— DATA_CARRIE R_TYPE_ID

This field is foreign key to:

Class name: DataCarrierTyp e; DB table: ism.data_carri er_type.

— DATA_CARRIE R_IDENTIFIER size 100

— DATA_CARRIE R_LANGUAGE

_TYPE_ID

This field is foreign key to: Class name: Language; DB table: ism.language_ type.

— RISK_OF_SUP

PLY_SHORTAG

E_FLAG

Y/N

— RISK_OF_SUP

PLY_SHORTAG E_COMMENT

size 4000

— MARKETING_S TATUS_REASO

N_TYPE_ID

This field is foreign key to: Class name: MarketingStat usReason; DB table:

ISM.MARKETI

NG_STATUS_R

EASON_TYPE

— Class name: LicenseP ackageSe tCountry

— DB table:

ISM.LIC_

PRODDET

_COUNTR Y

— DB view:

ISM.DV_L

IC_PROD

DET_COU

NTR

Entity Name API/Controller Endpoint API 7.3 Updates Description
Attribute Column
Manufacturi ngFunctionG lobalDetail ManufacturingFun ctionGlobalDetail RestController "/data-admin/ manufacturingfunction-globaldetail"

The following field is added:

— confidentialit yIndicator

DATA_CLASSIFIC ATION_TYPE_ID

This field is foreign key to:

Class name: DataClassification Type; DB table: ism.data_classific ation_type.

ActiveIngre dientDetail

ActiveIngredientD

etailRestControlle r

"/detail/ai"

Removed fields:

— measureTypeId

— lowNumeratorValue

— lowNumeratorPrefixId — lowNumeratorUnitId

— lowDenominatorValue

— lowDenominatorPrefixId

— lowDenominatorUnitId — highNumeratorValue

— highNumeratorPrefixId

— highNumeratorUnitId

— highDenominatorValue

— highDenominatorPrefixId

— highDenominatorUnitId

— measurementPoint

Those fields are taken from Active Ingredient under component.
Entity Name API/Controller Endpoint API 7.3 Updates Description
Attribute Column
MedicalDevi ceDetail MedicalDeviceDet ailRestController "/detail/ medical-device"

The following fields are added:

— deviceCombi nationTypeId

— deviceTypeId

— deviceIdentifi er

— deviceTradeN ame

— DEVICE_COMB

INATION_TYP

E_ID

This field is foreign key to: Class name: DeviceCombin ationType

DB table:

MGR.DEVICE_ COMBINATIO N_TYPE.

— DEVICE_TYPE _ID

This field is foreign key to: Class name: DeviceType; DB table:

MGR.DEVICE_

TYPE

— DEVICE_IDEN

TIFIER

String field.

— DEVICE_TRAD ENAME

String field.

— Class name: MedicalD

eviceDeta

il

— DB table:

MGR.PDS

_MED_DE

VICE_CH

ANGE

— DB view:

ISM.DV_P DS_MED_

DEVICE

Entity Name API/Controller Endpoint API 7.3 Updates Description
Attribute Column

SubstanceD

etail

SubstanceDetailR estController "/detail/ substance"

The following fields are added:

— presentation

MeasureType

Id

— presentationL owNumerator Value

— presentationL owNumerator UnitOfMeasur ement

— presentationL owNumerator UnitOfPresen tation

— presentation HighNumerat orValue

— presentation HighNumerat orValue

— presentation HighNumerat orUnitOfPres entation

— concentration LowNumerat orValue

— concentration LowNumerat orUnitOfMeas urement

— concentration LowDenomin atorValue

— concentration LowDenomin atorUnitOfMe asurement

— concentration HighNumerat orValue

— concentration

— MEASURE_TYP

E_ID column of

MGR.CONCEN

TRATION_VAL

UE table

DB table:

ism.legal_basi s_type.

— PRESENTATIO N_LOW_AMT_

NUMER_VALU

E column of

MGR.CONCEN

TRATION_VAL

UE table

String field.

— PRESENTATIO N_LOW_AMT_

NUMER_UNIT _TYPE_ID column of

MGR.CONCEN

TRATION_VAL

UE table

— PRESENTATIO N_LOW_AMT_

NUMER_UOP_ TYPE_ID column of

MGR.CONCEN TRATION_VAL

UE table.

— PRESENTATIO N_HI_AMT_N UMER_VALUE column of

MGR.CONCEN

TRATION_VAL

UE table

String field.

— PRESENTATIO N_HI_AMT_N UMER_VALUE column of

— Class name:Su bstanceD

etail

— DB

table:MG R.PDS_S

UBSTANC

E_CHANG

E

— DB

view:ISM. DV_PDS_

SUBSTAN

CE

©Ennov 2024 Ennov 3

HighNumerat

41 orUnitOfMeas urement

— concentration

MGR.CONCENEnnov InSight A TRATION_VALEnnov InSight A

UE table

dministration 7.3 PI Documentation

String field.

HighDenomin

Ennov InSight 7.0 API Changes

This table describes the API changes related to Product Family decoupling between Ennov InSight 7.0 and InSight 6.2.

Ennov InSight 7.0 includes the following API changes:

— Application has moved to the top entity in its own hierarchy.

— Application has a one-to-many relationship with the Product Family via the selectedProducts field.

— FamilyId field is removed.

— The uniqueness criteria for the Application has changed (Uniqueness for the API is used in "/create-or-update" controller operations).

Entity Name API/Controller API 6.2 API 7.0 Updates Description
Application

ApplicationRestContro

ller

CTAApplicationRestCo ntroller

INDApplicationRestCo ntroller /application / application/cta / application/ind

— Family Id required

— selectedProducts field - is not required

— Application uniqueness rule (appCode and familyId) or uuid"

— Family Id is removed

— selectedProducts field - required

— Application uniqueness rule changed (appCode and appName) or uuid"

If application is not found it executes an uniqueness expression. Unique expression is used in "/ create-orupdate" api.
ApplicationCou ntry ApplicationCountryRe stController / application-country

— Family Id is required

— Old behavior -

— Family Id is removed

— New behavior -

The behavior of

how

applicationId is

Event EventRestController / event

Example:

{ "queryFor":

{ "applicationId":

Example:

{ "queryFor":

{ "applicationId":

retrieved for use in queryFor has changed.
EventCountry EventCountryRestCon troller /event-country

APPLICATION_N

AME }, ... }

APPLICATION_C

ODE + " " +

EventCountryS chedule EventCountrySchedul eRestController / event-countryschedule

APPLICATION_N

AME }, ... }

Entity Name API/Controller API 6.2 API 7.0 Updates Description

AppEventProdu

ct

AppEventProductRest Controller /event/ product

Old behavior Example:

{ "queryFor":

{ "applicationId":

APPLICATION_NAM

E }, ... }

New behavior Example:

{ "queryFor":

{ "applicationId":

APPLICATION_COD

E + " " +

APPLICATION_NAM

E }, ... }

The behavior of

how

applicationId is retrieved for use in queryFor has changed.

FullProductPre sentation LicenseFppController /license/full-productpresentation

— Family Id is required

— Old behavior Example:

{ "queryFor":

{ "applicationId":

APPLICATION_N

AME }, ... }

— Family Id is removed

— New behavior Example:

{ "queryFor":

{ "applicationId":

APPLICATION_C

ODE + " " +

APPLICATION_N

AME }, ... }

License

This entity is inherited by ProductLicense

Doesn't have direct controller

— Family Id is required

— registeredAtc is required

— Old behavior Example:

{ "queryFor":

{ "applicationId":

APPLICATION_N

AME }, ... }

— Old uniqueness rule -

"Code and

AuthorityId and

FamilyID and

ApplicationId"

— Family Id is removed

— registeredAtc is not required

— New behavior Example:

{ "queryFor":

{ "applicationId":

APPLICATION_C

ODE + " " +

APPLICATION_N

AME }, ... }

— New uniqueness rule - "Code and AuthorityId and

ApplicationId"

MaAttachment

MaAttachmentRestCo

ntroller /full-productpresentation/ attachment

— Family Id required

— Old behavior Example:

{ "queryFor":

{ "applicationId":

APPLICATION_N

AME }, ... }

— Family Id is removed

— New behavior Example:

{ "queryFor":

{ "applicationId":

APPLICATION_C

ODE + " " +

APPLICATION_N

©Ennov 2024 Ennov

— Old uniqueness

rule - "name and343 fppId and familyId and

AME }, ... }Ennov InSig

— New uniquenessEnnov InSigh rule -

ht Administration 7.3 t API Documentation

applicationId and

Entity Name API/Controller API 6.2 API 7.0 Updates Description
ProductLicense "/license/productregistration"

Old behavior Example:

{ "queryFor":

{ "applicationId":

APPLICATION_NAM

E }, ... }

Please check

License as it inherits all changes.

N/A
LicensePackag eSet /license/packageset

Old behavior Example:

{ "queryFor":

{ "applicationId":

APPLICATION_NAM

E }, ... }

New behavior Example:

{ "queryFor":

{ "applicationId":

APPLICATION_COD

E + " " +

APPLICATION_NAM

E }, ... }

The behavior of

how

applicationId is retrieved for use in queryFor has changed.

LicensePackag eSetCountry /license/packageset/ country

— Family Id required

— registeredAtc is required

— Old behavior Example:

{ "queryFor":

{ "applicationId":

APPLICATION_N

AME }, ... }

— Family Id is removed

— registeredAtc is not required

— New behavior Example:

{ "queryFor":

{ "applicationId":

APPLICATION_C

ODE + " " +

APPLICATION_N

AME }, ... }

Subset (PDS) PDSRestController /pd s

Old behavior Example:

{ "queryFor":

{ "applicationId":

APPLICATION_NAM

E }, ... }

New behavior Example:

{ "queryFor":

{ "applicationId":

APPLICATION_COD

E + " " +

APPLICATION_NAM

E }, ... }

Schedule (seq status schedule) Schedule /sequenceschedule Family Id is required Family Id is removed N/A
Entity Name API/Controller API 6.2 API 7.0 Updates Description
PDS Details

/detail/*

CountryDetailRestCon

troller

ActiveIngredientDetail

RestController

CharacteristicsDetailR estController

CTADetailRestControll er

DoseScheduleDetailR estController

FluStrainDetailRestCo ntroller

FunctionDetailRestCo ntroller

IndicationDetailRestC ontroller

LabeledIndicationDet ailRestController LabelingDetailRestCo ntroller

ManufacturerDetailRe stController

ManufacturingProcess

DetailRestController MaterialDetailRestCon troller

MedicalDeviceDetailR estController

PackageSetDetailRest

Controller

PackagingDetailRestC ontroller

RouteOfAdministratio nDetailRestController ShelfLifeDetailRestCo ntroller

SpeciesDetailRestCon

troller

StepDetailRestControl ler

SubstanceDetailRestC ontroller

WithdrawalTimeDetail

RestController

Old behavior Example:

{ "queryFor":

{ "applicationId":

APPLICATION_NAM

E }, ... }

New behavior Example:

{ "queryFor":

{ "applicationId":

APPLICATION_COD

E + " " +

APPLICATION_NAM

E }, ... }

The behavior of

how

applicationId is retrieved for use in queryFor has changed.

Ennov InSight 7.0 API End Points Entities Removed

This table describes the API End Points entities deleted from the Ennov InSight 7.0.

Entity Name Controller Name Controller URL
Component Source Type Component Source Type Rest Controller /data-admin/component-sourcetype/
Contact Address Type Contact Address Type Rest Controller /data-admin/contact-addresstype
Contact Role Contact Role Rest Controller /data-admin/contact-role
Contact Type Contact Type Rest Controller /data-admin/contact-type/
Discipline Res Discipline Rest Controller /data-admin/discipline/
Dossier Metadata Type Dossier Metadata Type Rest Controller /data-admin/dossier-metadatatype
PSI Attachment PSI Attachment Rest Controller /data-admin/p-s-i-attachment/
Recipient For Type Recipient For Type Rest Controller /data-admin/recipient-for-type/
RI Product Type RI Product Type Rest Controller /data-admin/ri-product-type/
Substance Attachment Substance Attachment Rest Controller /data-admin/substanceattachment