Introduction
JD Atina Web Services Microservices 1.0.0 is fully integrated microservices to allow consume JDE Web Services in a simpe way.
Easy to install and easy to use.
JD ATINA Microservices is made up of a series of the following services:
- JD Atina Web Service Microservice
- JD Atina Rest-API Microservice
We included additional connectors to allow third-party software to connect to JD Atina Web Service Microservice directly
- JD Atina Mule 3 CE Connector
For other third-party software the user can use a simple https connectors.
We provide additional tools to allow:
- JD Atina Generate Configuration Files Tool.
- JD Atina Generate Jars Files Tool.
- JD Atina Test Connections Tool.
The current JD Atina REST WS API integration version is v1
The following table shows API versions present in each major version of JD Atina Web Services Microservices:
API Version | JD Atina WS Microservices Version | Documentation |
---|---|---|
v1 |
1.0.0 | - |
JD ATINA Web Service Microservice
It's a simple Microservice used to consume JDE Web Services directly to Enterprise Service Logic instead use JDE Applications Server.
It allows third party sofware to connect to JDE Web Services to share logic and data.
It provides:
- Access to JDE Web Services.
- Credentials management.
- Session management.
- Connection pooling.
- Metadata introspection
JD ATINA Web Service Microservice is deployed with dockers.
JD ATINA Rest API Microservice
It's a simple Microservice used to epose JDE Web Services as Rest API.
Any third party sofware with HTTP Connector can consume JDE Web Services with json data.
JD Atina Mule 3 CE Connector
It's a Mule CE connector to consume Web Service from Mulesoft Applications.
Mule 4 is in development.
Implementations
The following implementation steps need to be performed before working with JD Web Service Microservice:
Set up a configuration
Start JD Web Services Microservice / JDE Rest API Microservice
Install Mulesoft JDE WS Community Edition Connector 3.
Request/Response Format
The default response format is JSON. Requests with a message-body use plain JSON to set or update resource attributes. Successful requests will return a 200 OK
HTTP status.
Some general information about responses:
- Dates are returned in ISO8601 format:
YYYY-MM-DDTHH:MM:SS
- Resource IDs are returned as integers.
- Any decimal monetary amount, such as prices or totals, will be returned as strings with two decimal places.
- Other amounts, such as item counts, are returned as integers.
- Blank fields are generally included as
null
or emtpy string instead of being omitted.
Tools
Some useful tools you can use to access the API include:
- Postman - Cross-platform REST client, available for Mac, Windows, and Linux.
Configuration
Requirements
Requirements to consume Web Services using JD Atina WS Microservices
To use the latest version of the JD Atina REST WS API you will need:
- JD Atina Web Services Microservices 1.0.0+ running.
- Oracle JD Edwards EnterpriseOne HTML Client credential: User, Pasword, Environment and Role.
- You may access the API over either HTTP or HTTPS, but HTTPS is recommended where possible.
Requirements to install JD Atina WS Microservices
Oracle JD Edwards EnterpriseOne Server Manager credential: jde admin user, Pasword and url for Server Manager Ex. http://server:8999/manage/
All microserives are dockerised. Make sure you have git and Docker installed because microservices run under Docker container.
Following folder inside JDE Deployment Server:
//Deplo/E920/MISC
//Deplo/E920/system/Classes
//Deplo/E920/system/JAS/webclient.ear/webclient.war/WEB-INF/lib
//Deplo/E920/DV920/java/sbfjars
Addionals Requirements to use JD Generate Configuration Files and JD Generate Jars Files Tools
JDK 8 installed with JAVA_HOME configured appropriately (It not requires for docker version)
Apache Maven 3.8.1+
Verify Maven is using the Java you expect
If you have multiple JDK’s installed it is not certain Maven will pick up the expected java and you could end up with unexpected results.
You can verify which JDK Maven uses by running mvn --version.
JD Atina Additional Tools
Use the following tools to start the configuration process.
- JD Atina Generate Configuration Files Tool
- JD Atina Generate Jars Files Tool
JD Atina Generate Configuration Files Tool
JD WS Microservice needs the following ini files according to your environment:
- jdbj.ini
- jdeinterop.ini
- jdelog.properties
- tnsnames.ora" (for Oracle RDBMS based installations only)
You can configure it manually following JDE manuals or you can use this tools to help you.
This tool help to you to generate a base ini files.
It takes all information from JDE Enterprise Server Manager using REST API for Server Manager
The tooll will require to select the HTML Client instance according to your environment.
At the end of this process, We recommend review jdeinterop.ini and jdbj.ini files before deploy it on JD Atina
Web Service Microservice using this guide: Understanding jdeinterop.ini File
JD Atina Generate Configuration Files Tool - Using JAVA APP
It will require openjdk 8 installed.
Download JD Atina Generate Configuration Files Tool - latest release:
curl http://157.245.236.175:8081/artifactory/libs-release-local/com/atina/jd-create-ini-files/1.0.0/jd-create-ini-files-1.0.0-jar-with-dependencies.jar \ --output jd-create-ini-files-1.0.0-jar-with-dependencies.jar
Run jd-create-ini-files command:
java -jar jd-create-ini-files-1.0.0-jar-with-dependencies.jar [OPTIONS] OPTIONS: Options category 'startup': --debug [-d] (a string; default: "N") Debug Option --environment [-e] (a string; default: "") JDE Environment --password [-p] (a string; default: "") JDE Password for Enterprise Server Manager --server [-s] (a string; default: "") JDE URL of Server Manager --user [-u] (a string; default: "") JDE User for Enterprise Server Manager
Usage Exampes
java -jar jd-create-ini-files-1.0.0-jar-with-dependencies.jar \ -u jde_admin \ -p XXXXXXX \ -s http://server-manager:8999/manage \ -e JDV920
JD Atina Generate Configuration Files Tool - Using Docker instead of Java Application
Usage Example:
docker run --rm -v /tmp/build_jde_libs:/tmp/build_jde_libs/ -i \ --name jd-create-ini-files 92455890/jd-create-ini-files:1.0.0 \ jde_admin jde_password JPS920 http://servermanager.com:8999/manage
Reviewing Output
Folder : /tmp/build_jde_libs/JPS920 has been created Authenticating : http://server-manager:8999/manage Cookie: 044GXl43PnHkTe1L3AMc/siNkFOIoll+S4ngsdGnNkS7Qg=MDA5MDE1MDE1amRlX2FkbWluMTM0LjIwOS4yMTEuMjQ4MTM0LjIwOS4yMTEuMjQ4MTYzNzYwNzAxMTIzOQ== Getting Server Groups : http://server-manager:8999/manage Select HTML Instance for environment JPS920: 0 - alpha_db 1 - alpha_dep 2 - alpha_dv920 3 - alpha_ent 4 - html_ps920 Q - Quit 4 Option Selected: 4 JDE Instance selected: html_ps920 Getting Instance Values: http://server-manager:8999/manage for Instance Name 'html_ps920' Processing File: jdbj.ini Processing File: jdeinterop.ini Processing File: jdelog.properties Processing File: settings.xml ------------------------------------------------------------------------ GENERATION SUCESSS ------------------------------------------------------------------------ File: \tmp\build_jde_libs\JPS920\jdbj.ini generated File: \tmp\build_jde_libs\JPS920\jdeinterop.ini generated File: \tmp\build_jde_libs\JPS920\jdelog.properties generated File: \tmp\build_jde_libs\settings.xml generated ------------------------------------------------------------------------
It will create the following files:
build_jde_libs ├─ settings.xml ├─ JPS920 ├─────├─ jdbj.ini ├─────├─ jdeinterop.ini └─────└─ jdelog.properties
Adding manually "tnsnames.ora" for Oracle RDBMS based installations only.
Edit jdeinterop.ini to set correct server IP's:
[DNS_SERVERS] JDE-ENT=2.2.2.2 JDE-SQL=1.1.1.1
JD Atina Generate Jars Files Tool
This tool will generate all jars files need it by JD Web Service Microservice.
Preparing folders
Create folder with the following structure under /tmp/build_jde_libs:
tmp └─build_jde_libs ├─ JDBC_Vendor_Drivers └─ system │─ Classes │─ JAS └─ WS
Copy files from JDE Deploment Server to the corresponding folders
Destination | Source |
---|---|
/tmp | |
/tmp/build_jde_libs | |
->/JDBC_Vendor_Drivers | //Deployment Server/E920/MISC/* |
->/system/Classes | //Deployment Server/E920/system/Classes* |
->/system/JAS | //Deployment Server/E920/system/JAS/webclient.ear/webclient.war/WEB-INF/lib/* |
->/system/WS | //Deployment Server/E920\DV920/java/sbfjars/* |
Define local Repository (localRepo option)
This option is required to run this tool using JAVA apps locally.
Running this command you can get where the curret local repository is defined:
mvn help:evaluate -Dexpression=settings.localRepository
In this output we see /root/.m2/repository
[INFO] [INFO] ------------------< org.apache.maven:standalone-pom >------------------- [INFO] Building Maven Stub Project (No POM) 1 [INFO] --------------------------------[ pom ]--------------------------------- [INFO] [INFO] --- maven-help-plugin:3.2.0:evaluate (default-cli) @ standalone-pom --- [INFO] No artifact parameter specified, using 'org.apache.maven:standalone-pom:pom:1' as project. [INFO] /root/.m2/repository <== ****** THIS IS THE VALUE REQUIRED ******* [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 3.301 s [INFO] Finished at: 2021-11-22T20:31:42Z [INFO] ------------------------------------------------------------------------
JD Atina Generate Jars Files Tool - Using Java Application
It will require openjdk 8 installed.
Download JD Atina Generate Jars Files Tool - latest release:
curl http://157.245.236.175:8081/artifactory/libs-release-local/com/atina/jd-create-jar-files/1.0.0/jd-create-jar-files-1.0.0-jar-with-dependencies.jar \ --output jd-create-jar-files-1.0.0-jar-with-dependencies.jar
Run jd-create-ini-files command:
Usage: java -jar jd-create-jar-files-1.0.0-jar-with-dependencies.jar OPTIONS Options category 'startup': --accion [-a] (a string; default: "3") Accion: 1: Generate JDE Bundle 2: Build WS 3: Both --clean [-c] (a string; default: "Y") clean --jdbcDriver [-j] (a string; default: "/tmp/build_jde_libs/JDBC_Vendor_Drivers") Enter JDBC Driver Folder --jdeInstallPath [-i] (a string; default: "/tmp/build_jde_libs/") Enter JDE Path installed --localRepo [-r] (a string; default: "") Enter Maven Local Repo --settings [-s] (a string; default: "/tmp/build_jde_libs/settings.xml") settings.xml to use Ex. /apache-maven-3.8.1/conf/settings.xml --version [-o] (a string; default: "1.0.0") Enter Version
Usage Exampes
java -jar jd-create-jar-files-1.0.0-jar-with-dependencies.jar -r /root/.m2/repository
JD Atina Generate Jars Files Tool - Using Docker instead of Java Application
Run the following docker command:
docker run --rm -v /tmp/build_jde_libs:/tmp/build_jde_libs/ \ -i --name jd-create-jar-files 92455890/jd-create-jar-files:1.0.0
Reviewing Output
------------------------------------------------------------------------ GENERATION SUCESSS ------------------------------------------------------------------------ JDE Library bundle has been copied to: /tmp/build_jde_libs/jde-lib-wrapped-1.0.0.jar JDE WS has been copied to: /tmp/build_jde_libs/StdWebService-1.0.0.jar ------------------------------------------------------------------------
It will create the following files:
build_jde_libs ├─ jde-lib-wrapped-1.0.0.jar └─ StdWebService-1.0.0.jar
Deploy artifact to Local Repository - Optional
This optional. At startup, JD Microservice has the option to get these libraries from an internal repository.
In case you want to use a local repository, exectute the following command:
mvn deploy:deploy-file \ -DgroupId=com.jdedwards \ -DartifactId=jde-lib-wrapped \ -Dversion=1.0.0 \ -DrepositoryId=repo-central \ -Dpackaging=jar \ -Dfile=\tmp\build_jde_libs\jde-lib-wrapped-1.0.0.jar \ -Durl=http://localrepo:8081/artifactory/libs-release
mvn deploy:deploy-file \ -DgroupId=com.jdedwards \ -DartifactId=StdWebService \ -Dversion=1.0.0 \ -DrepositoryId=repo-central \ -Dpackaging=jar \ -Dfile=\tmp\build_jde_libs\StdWebService-1.0.0.jar \ -Durl=http://localrepo:8081/artifactory/libs-release
JD Atina microservices - Installation
Start JD Web Services Microservice / JDE Rest API Microservice
Installation
Download JD Docker Composer Files - latest release:
curl http://157.245.236.175:8081/artifactory/libs-release/com/atina/jd-docker-files/1.0.0/jd-docker-files-1.0.0.zip \ --output jd-docker-files-1.0.0.zip
Unzip JD Docker Composer Files (jd-docker-files-1.0.0.zip) downloaded in a temporal folder.
7z e jd-docker-files-1.0.0.zip
Configuration
Edit .env file and change the following values:
under DNS_SERVERS section inside jdeinterop.ini files to complete theses values:
7z e jd-docker-files-1.0.0.zip # # ==================================== # ETC/HOST # ==================================== # JDE_MICROSERVER_ENTERPRISE_SERVER_NAME=JDE-ENT JDE_MICROSERVER_ENTERPRISE_SERVER_IP=1.1.1.1 JDE_MICROSERVER_ENTERPRISE_DB_NAME=JDE-DATABASE JDE_MICROSERVER_ENTERPRISE_DB_IP=2.2.2.2
Create and Run JD Microservices
Run following docker commands:
docker-compose -f docker-compose-dist.yml up --no-start
Copy files Configuration files and jars files into Container
docker cp /tmp/build_jde_libs/JPS920 jd-atina-microserver:/tmp/jde/config docker cp /tmp/build_jde_libs/jde-lib-wrapped-1.0.0.jar jd-atina-microserver:/tmp/jde docker cp /tmp/build_jde_libs/StdWebService-1.0.0.jar jd-atina-microserver:/tmp/jde
Run Containers
docker-compose -f docker-compose-dist.yml start
Check JD WS Microservice startup
Check starting process for JD Atina WS Microservice
docker exec -it jd-atina-microserver cat /tmp/start.log
-SERVICE-------------------------------------------- Name: 172.28.0.2 Port: 8077 -REPOSITORY----------------------------------------- Customer: http:157.245.236.175:8081/artifactory/libs-release Atina: http:157.245.236.175:8081/artifactory/libs-release -LIBRARIES------------------------------------------ StdWebService Version 1.0.0 jde-lib-wrapped Version 1.0.0 JDEAtinaServer Version 1.0.0 -LICENSE-------------------------------------------- Code: demo -MICROSERVER---------------------------------------- JDE_MICROSERVER_TOKEN_EXPIRATION: 3000000 JDE_MICROSERVER_ENTERPRISE_SERVER_NAME: JDE-ENT JDE_MICROSERVER_ENTERPRISE_SERVER_IP: 522.21.33.261 JDE_MICROSERVER_ENTERPRISE_DB_NAME: JDE-DATABASE JDE_MICROSERVER_ENTERPRISE_DB_IP: 625.22.339.57 JDE_MICROSERVER_MOCKING: 0 ---------------------------------------------------- ADDITIONAL SCRIPT: 127.0.0.1 localhost 172.28.0.2 bcd05e8e5bd0 ---------------------------------------------------- Check log cat /tmp/jde/JDEConnectorServerLog/jd_atina_server_2021-11-18.0.log
At the end of the logs, you will the log that you need to check. Run the following docker command:
docker exec -it jd-atina-microserver cat /tmp/jde/JDEConnectorServerLog/jde_atina_server_2021-11-18.0.log
.... 19:27:06.713 [main] INFO c.acqua.jde.jdeconnectorserver.JDEConnectorServer - Iniciando JDE Service Impl... 19:27:06.891 [main] INFO c.a.jde.jdeconnectorserver.server.JDERestServer - *-------------------------------------* 19:27:06.892 [main] INFO c.a.jde.jdeconnectorserver.server.JDERestServer - * Starting JDE Microservice 1.0.0 * 19:27:07.061 [main] INFO c.a.jde.jdeconnectorserver.server.JDERestServer - * JDE Microservice started! * 19:27:07.064 [main] INFO c.a.jde.jdeconnectorserver.server.JDERestServer - *-------------------------------------*
docker logs jd-atina-microserver
.... 19:27:06.713 [main] INFO c.acqua.jde.jdeconnectorserver.JDEConnectorServer - Iniciando JDE Service Impl... 19:27:06.891 [main] INFO c.a.jde.jdeconnectorserver.server.JDERestServer - *-------------------------------------* 19:27:06.892 [main] INFO c.a.jde.jdeconnectorserver.server.JDERestServer - * Starting JDE Microservice 1.0.0 * 19:27:07.061 [main] INFO c.a.jde.jdeconnectorserver.server.JDERestServer - * JDE Microservice started! * 19:27:07.064 [main] INFO c.a.jde.jdeconnectorserver.server.JDERestServer - *-------------------------------------*
Check JD Rest API Microservice startup
docker logs jd-atina-rest-server
Output:
exec java -Dquarkus.http.host=0.0.0.0 -Djava.util.logging.manager=org.jboss.logmanager.LogManager -XX:+ExitOnOutOfMemoryError -cp . -jar /deployments/quarkus-run.jar ,ggg, dP""8I I8 dP 88 I8 dP 88 88888888 gg ,8' 88 I8 "" d88888888 I8 gg ,ggg,,ggg, ,gggg,gg __ ,8" 88 I8 88 ,8" "8P" "8, dP" "Y8I dP" ,8P Y8 ,I8, 88 I8 8I 8I i8' ,8I Yb,_,dP `8b,,d88b,_,88,_,dP 8I Yb,,d8, ,d8b, "Y8P" `Y88P""Y88P""Y88P' 8I `Y8P"Y8888P"`Y8 Powered by Quarkus 2.5.0.Final 19:32:14 INFO [io.quarkus] (main) jd-atina-rest-server 1.0.0 on JVM (powered by Quarkus 2.5.0.Final) started in 8.869s. Listening on: http://0.0.0.0:8081 and https://0.0.0.0:8082 19:32:14 INFO [io.quarkus] (main) Profile prod activated. 19:32:14 INFO [io.quarkus] (main) Installed features: [cdi, logging-gelf, qute, resteasy, resteasy-jackson, resteasy-qute, scheduler, smallrye-context-propagation, smallrye-openapi, swagger-ui, vertx]
Go to API defintions:
JDE Check JD Microservice executing a Web Service
This tool is used to test JD Microservice. It will invoke a simple WS.
Download JD Atina Check Web Service Microservice - latest release:
Run jd-create-ini-files command:
Usage: java -jar jd-check-microservice OPTIONS Options category 'startup': --mode [-m] (a string; default: "TestLoggindAndGetAddressBookWS") Modes --user [-u] (a string; default: "") JDE User --password [-w] (a string; default: "") JDE Password --environment [-e] (a string; default: "") JDE Environment --role [-r] (a string; default: "") JDE Role --serverName [-s] (a string; default: "")JD Micreserver Name or IP --serverPort [-p] (a string; default: "") JD Micreserver Port --addressbookno [-a] (a string; default: "") Address Book No
Usage Exampes
java -jar jd-check-microservice-1.0.0-jar-with-dependencies.jar -u JDE -w XXXXXX -e JDV920 -r *ALL -s localhost -p 8077 -m TestLoggindAndGetAddressBookWS -a 28
Output
Checking Microservice... user=JDE, environment=JDV920, role=*ALL, serverName=192.168.99.100, serverPort=8077, mode=TestLoggindAndGetAddressBookWS, addressbookno=1, sessionId=, transactionId= Transaction ID: 20211122124518 User User: JDE in environment JDV920 with *ALL connected with Session ID [-1636010069] WS JP010000.AddressBookManager.getAddressBook has been called correctly Logout [0] ------------------------------------------------------------------------ CHECK SUCESSS ------------------------------------------------------------------------ User User: JDE in environment JDV920 with *ALL connected with Session ID -1636010069 Address Book Name: Financial/Distribution Company -- User User: JDE in environment JDV920 with *ALL disconnected. Current session ID 0 ------------------------------------------------------------------------
Install Mulesoft JD Atina WS CE Connector Mule 3
The Atina JDE Web Service Connector CE provides interoperability with Oracle’s JD Edwards EnterpriseOne™ it allow consume all JDE Web Services published
Download
Download JD Atina Web Service Connector CE - latest release:
curl http://157.245.236.175:8081/artifactory/libs-release/com/atina/jd-atina-connector/1.0.0/jd-atina-connector-1.0.0.zip -o jd-atina-connector-1.0.0.zip
Installation
Install From the Studio Help Menu:
Click Help > Install New Software.
Click Add > Then, click Archive.. and select jd-atina-connector-1.0.0.zip downloaded
Expand a Community Category and click the checkbox for the connector to install.
Click Next, Next, I accept the terms of the license agreement, Finish, and restart Studio when prompted.
From a Mule Project in Studio, search for the connector and drag it to the Canvas.
Authentication
JD Atina Web Services Microservices 1.0.0 includes two ways to authenticate.
Login with JDE User Credentials
The HTTP method will be POST.
You must use the /login endpoint and pass the above parameters as a header and body.
Header parameters
Parameter | Type | Description |
---|---|---|
Token |
string | Set an empty token to login using JDE User Credential. mandatory |
TransactionId |
integer | Id used to get log inside JD Atina WS Microservices. optional. Use 0 to generate a transsaction ID inside JDE Atina Microservices |
Body parameters
JDE HTML Client Credentials.
Parameter | Type | Description |
---|---|---|
user |
string | JDE User mandatory |
password |
string | JDE Password mandatory |
environment |
string | JDE Environment mandatory |
role |
string | JDE Role mandatory |
curl --location --request POST 'https://192.168.99.100/login' \
--header 'Token;' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'TransactionId: 0' \
--data-raw '{
"user": "JDE",
"environment": "JDV920",
"password": "xxxxxxx",
"role": "*ALL"
}
'
Example of JSON received with the API Keys
{
"addressBookNo": "1"
}
Address Book Number setup for the user.
Header parameters returned
Parameter | Type | Description |
---|---|---|
Token |
string | Token created |
TransactionId |
integer | Transaction Id |
SessionId |
integer | JDE Id connection. |
ChannelId |
integer | Connection Id between Rest API and WS Microservice. |
Login with JD Atina Token
To login using token will require generate a token before invoke login API.
The administrator will need to generate a token using the following API.
The HTTP method will be POST.
You must use the /token/create endpoint and pass the above parameters as a header and body.
Header parameters
Parameter | Type | Description |
---|---|---|
TransactionId |
integer | Id used to get log inside JD Atina WS Microservices. optional. Use 0 to generate a transsaction ID inside JDE Atina Microservices |
Body parameters
JDE HTML Client Credentials.
Parameter | Type | Description |
---|---|---|
user |
string | JDE User mandatory |
password |
string | JDE Password mandatory |
environment |
string | JDE Environment mandatory |
role |
string | JDE Role mandatory |
tokenExpiration |
integer | Token expiration in milliseconds mandatory |
curl --location --request POST 'https://192.168.99.100/token/create' \
--header 'TransactionId: 0' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"user": "JDE",
"environment": "JDV920",
"password": "xxxxxxx",
"role": "*ALL",
"tokenExpiration": 480000
}
'
Header parameters returned
Parameter | Type | Description |
---|---|---|
Token |
string | Token created |
TransactionId |
integer | Transaction Id |
SessionId |
integer | 0. There is not a JDE connection yet. |
ChannelId |
integer | Connection Id between Rest API and WS Microservice. |
The next step is use this token created to login.
The HTTP method will be POST.
You must use the /login endpoint and pass the above parameters as a header and body.
Header parameters
Parameter | Type | Description |
---|---|---|
Token |
string | Set token created. mandatory |
TransactionId |
integer | Id used to get log inside JD Atina WS Microservices. optional. Use 0 to generate a transsaction ID inside JDE Atina Microservices |
Body parameters
Use an empty body
curl --location --request POST 'https://192.168.99.100/login' \
--header 'Token: eyJhbGciOiJIUzI1NiJ9.exsdsIiOiJTdWJqZWN0IiwiaXNzIjoiSXNzdWUiLCJ1c2VyIjoiSkRdW52aXJvbm1lbnQiOiJKRFY5MjAiLCJyb2xlIjdlc3Npb25JZCI6MTkwOTg5MDEzOSwiZXhwIjoxNjM5NDA3ODczfQ.YuUXk1R60YIicZjfFp9W3px_4bIpIrHSvUIYqChSxOc' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'TransactionId: 0' \
--data-raw '{}
Example of JSON received with the API Keys
{
"addressBookNo": "1"
}
Address Book Number setup for the user.
Header parameters returned
Parameter | Type | Description |
---|---|---|
Token |
string | New Token created. It will be next token to use. |
TransactionId |
integer | Transaction Id |
SessionId |
integer | JDE Id connection. |
ChannelId |
integer | Connection Id between Rest API and WS Microservice. |
Logout with JD Atina Token
To logout will require use the last token used.
The HTTP method will be POST.
You must use the /token/logout endpoint and pass the above parameters as a header and body.
Header parameters
Parameter | Type | Description |
---|---|---|
Token |
string | Last Token used or created. |
TransactionId |
integer | Id used to get log inside JD Atina WS Microservices. optional. Use 0 to generate a transsaction ID inside JDE Atina Microservices |
Authentication Errors
Occasionally you might encounter errors when accessing the REST API:
Error Code | Error Type |
---|---|
500 Internal Server Error |
Server error |
Invalidad JDE Credentials values:
{
"errorMessage": "INTERNAL: Error Creating Connection",
"errorDetail": "JDE Conexion Error InvalidLoginException: Invalid UserName and/or Password"
}
JDE WS Microservice stopped:
{
"errorMessage": "UNAVAILABLE: io exception",
"errorDetail": "Login"
}
JDE WS Microservice not installed correctly. Check Microservice logs: docker exec -it jd-atina-microserver cat /tmp/jde/JDEConnectorServerLog/jde_atina_server_2021-12-13.0.log (Set the correct date)
{
"errorMessage": "UNKNOWN",
"errorDetail": "Login"
}
JDE WS Microservice not configured correctly. Please review section DNS inside .env file.
{
"errorMessage": "INTERNAL: Error Creating Connection",
"errorDetail": "JDE Conexion Error Exception: null source"
}
JDE WS Microservice not configured correctly. You are trting to login in a environment not configured.
{
"errorMessage": "INTERNAL: Error Creating Connection",
"errorDetail": "JDE Conexion ErrorFile '/tmp/jde/config/JDV920/jdeinterop.ini' does not exist"
}
Get Started
How get a item price.
Each request will require to use of the token generated by the previous request.
Create Token
curl --location --request POST 'https://192.168.99.100/token/create' \
--header 'TransactionId: 0' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"user": "JDE",
"environment": "JDV920",
"password": "xxxxxx",
"role": "*ALL",
"tokenExpiration": 480000
}
'
Login with Token
curl --location --request POST 'https://192.168.99.100/login' \
--header 'Token: eyJhbGciOiJ3434343iJ9.eyJqdGkiOiIxMjMxMjMxIiwiaWF0IjoxNjM5NDIwMjAwLCJzdWIiOiJTdWJqZWN0IiwiaXNzIjoiSXNzdWUiLCJ1c2VyIjoiSkRFIiwicGFzc3dvcmQiOiJtb2R1czIwMjAhIiw34352aXJvbm1lbnQiOiJKRFY5MjAiLCJyb2xlIjoiKkFMTCIsInNlc3Npb25JZCI6MTMyMzQzNTk2NCwiZXhwIjoxNjM5NDIzMjAwfQ.UPmXw9IoEvr0IWuX5JSPt8Vrs84sj-0ZUpjM_q62a4Y' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'TransactionId: 0' \
--data-raw '{}
'
Select WS to invoke
This API shows all WS available.
curl --location --request GET 'https://192.168.99.100/metadata/operations' \
--header 'Token: eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIxMjMxMjMxIiwiaW232322oxNjM5NDIwMzI4LCJzdWIiOiJTdWJqZWN0IiwiaXNzIjoiSXNzdWUiLCJ1c2VyIjoiSkRFIiwicGFzc3dvcmQiOiJtb2R1czIwMjAhIiwiZW52aXJvbm1lbnQiOiJKRFY5MjAiLCJyb2xlIjoiKkFMTCIsInNlc3Npb25JZCI6MTMyMzQzNTk2NCwiZXhwIjoxNjM5NDIzMzI4fQ.afI_klbpktP2sEX68MzcLGL3bvewamqETPbcAtoJfHM' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Accept-Encoding: gzip, deflate, br' \
--header 'TransactionId: 0' \
--data-raw '{}
'
Get Input Payload for Get Item Price
curl --location --request GET 'https://192.168.99.100/metadata/payload-input/oracle.e1.bssv.JP410000.InventoryManager.getItemPrice' \
--header 'Token: eyJhbGciOiJIUz343439.eyJqdGkiOiIxMjMxMjMxIiwiaWF0IjoxNjM5NDIwNjY0LCJzdWIiOiJTdWJqZWN0IiwiaXNzIjoiSXNzdWUiLCJ1c2VyIjoiSkRFIiwicGFzc3dvcmQiOiJtb2R1czIwMjAhIiwiZW52aXJvbm1lbnQiOiJKRFY5MjAiLCJyb2xlIjoiKkFMTCIsInNlc3Npb25JZCI6MTMyMzQzNTk2NCwiZXhwIjoxNjM5NDIzNjY0fQ.Qlup99NWRA_Uyhf4a0THV8yzC5Ua-OjqEl_l6AlgqoM' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Accept-Encoding: gzip, deflate, br' \
--header 'TransactionId: 0' \
--data-raw '{}
'
Get Item Price
curl --location --request GET 'https://192.168.99.100/metadata/payload-input/oracle.e1.bssv.JP410000.InventoryManager.getItemPrice' \
--header 'Token: eyJhbGciOiJIUz343439.eyJqdGkiOiIxMjMxMjMxIiwiaWF0IjoxNjM5NDIwNjY0LCJzdWIiOiJTdWJqZWN0IiwiaXNzIjoiSXNzdWUiLCJ1c2VyIjoiSkRFIiwicGFzc3dvcmQiOiJtb2R1czIwMjAhIiwiZW52aXJvbm1lbnQiOiJKRFY5MjAiLCJyb2xlIjoiKkFMTCIsInNlc3Npb25JZCI6MTMyMzQzNTk2NCwiZXhwIjoxNjM5NDIzNjY0fQ.Qlup99NWRA_Uyhf4a0THV8yzC5Ua-OjqEl_l6AlgqoM' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Accept-Encoding: gzip, deflate, br' \
--header 'TransactionId: 0' \
--data-raw '{}
'
Logout
curl --location --request GET 'https://192.168.99.100/metadata/payload-input/oracle.e1.bssv.JP410000.InventoryManager.getItemPrice' \
--header 'Token: eyJhbGciOiJIUz343439.eyJqdGkiOiIxMjMxMjMxIiwiaWF0IjoxNjM5NDIwNjY0LCJzdWIiOiJTdWJqZWN0IiwiaXNzIjoiSXNzdWUiLCJ1c2VyIjoiSkRFIiwicGFzc3dvcmQiOiJtb2R1czIwMjAhIiwiZW52aXJvbm1lbnQiOiJKRFY5MjAiLCJyb2xlIjoiKkFMTCIsInNlc3Npb25JZCI6MTMyMzQzNTk2NCwiZXhwIjoxNjM5NDIzNjY0fQ.Qlup99NWRA_Uyhf4a0THV8yzC5Ua-OjqEl_l6AlgqoM' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Accept-Encoding: gzip, deflate, br' \
--header 'TransactionId: 0' \
--data-raw '{}
'
Metadata
Metadata APIs provide information about all available web services on the microservice.
Operations
This API lets you retrieve and view a simple list of available web services endpoints.
HTTP request
/metadata/operations
curl --location --request GET 'https://192.168.99.100/metadata/operations' \
--header 'Token: eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIxMjMxMjMxIiwiaWF0IjoxNjM5NDkyOTM1LCJzdWIiOiJTdWJqZWN0IiwiaXNzIjoiSXNzdWUiLCJ1c2VyIjoiSkRFIiwicGFzc3dvcmQiOiJtb2R1czIwMjAhIiwiZW52aXJvbm1lbnQiOiJKRFY5MjAiLCJyb2xlIjoiKkFMTCIsInNlc3Npb25JZCI6MjQ4OTUxNDg3LCJleHAiOjE2Mzk0OTU5MzV9.Wt2G9jT4L9ut5gZUc3FlHrXohVW5abNvCpvx3pDqQPs' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Accept-Encoding: gzip, deflate, br' \
--header 'TransactionId: 0' \
--data-raw '{}
'
JSON response example:
[
"oracle.e1.bssv.JPR01020.RI_CustomerManager.getCustomerCreditInfo",
"oracle.e1.bssv.JP000040.FinancialComplianceManager.getAgingCompanyConstants",
"oracle.e1.bssv.JP420000.SalesOrderManager.getSalesOrder",
"oracle.e1.bssv.JP410000.InventoryManager.getCalculatedAvailability",
...
"oracle.e1.bssv.JP080020.EmployeeManager.processPendingEmployee"
]
Get Input Parameters for a Web Service
This API lets you retrieve parameters required by the web services including the type.
HTTP request
/metadata/parameters-input/
curl --location --request GET 'https://192.168.99.100/metadata/parameters-input/oracle.e1.bssv.JP010000.AddressBookManager.getAddressBook' \
--header 'Token: eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIxMjMxMjMxIiwiaWF0IjoxNjM5NDkzMjc2LCJzdWIiOiJTdWJqZWN0IiwiaXNzIjoiSXNzdWUiLCJ1c2VyIjoiSkRFIiwicGFzc3dvcmQiOiJtb2R1czIwMjAhIiwiZW52aXJvbm1lbnQiOiJKRFY5MjAiLCJyb2xlIjoiKkFMTCIsInNlc3Npb25JZCI6MjQ4OTUxNDg3LCJleHAiOjE2Mzk0OTYyNzZ9.aWmIwz0S3jtcOna_YawvUSKNjT1ZRg6-cB40iymiCF8' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Accept-Encoding: gzip, deflate, br' \
--header 'TransactionId: 0' \
--data-raw '{}
'
JSON response example:
[
"businessUnit: <java.lang.String>",
"address: <oracle.e1.bssv.JP010000.valueobject.GetAddress>",
".countyCode: <java.lang.String>",
".countryCode: <java.lang.String>",
".postalCode: <java.lang.String>",
".stateCode: <java.lang.String>",
"categoryCodesAddressBook: <oracle.e1.bssv.JP010000.valueobject.CategoryCodesAddressBook>",
".categoryCode013: <java.lang.String>",
".categoryCode012: <java.lang.String>",
".categoryCode011: <java.lang.String>",
".categoryCode010: <java.lang.String>",
".categoryCode030: <java.lang.String>",
".categoryCode019: <java.lang.String>",
".categoryCode018: <java.lang.String>",
".categoryCode017: <java.lang.String>",
".categoryCode016: <java.lang.String>",
".categoryCode015: <java.lang.String>",
".categoryCode014: <java.lang.String>",
".categoryCode002: <java.lang.String>",
".categoryCode024: <java.lang.String>",
".categoryCode001: <java.lang.String>",
".categoryCode023: <java.lang.String>",
".categoryCode022: <java.lang.String>",
".categoryCode021: <java.lang.String>",
".categoryCode020: <java.lang.String>",
".categoryCode009: <java.lang.String>",
".categoryCode008: <java.lang.String>",
".categoryCode007: <java.lang.String>",
".categoryCode029: <java.lang.String>",
".categoryCode006: <java.lang.String>",
".categoryCode028: <java.lang.String>",
".categoryCode005: <java.lang.String>",
".categoryCode027: <java.lang.String>",
".categoryCode004: <java.lang.String>",
".categoryCode026: <java.lang.String>",
".categoryCode003: <java.lang.String>",
".categoryCode025: <java.lang.String>",
"entityName: <java.lang.String>",
"entityTypeCode: <java.lang.String>",
"languageCode: <java.lang.String>",
"industryClassificationCode: <java.lang.String>",
"entity: <oracle.e1.bssv.util.J0100010.valueobject.Entity>",
".entityTaxId: <java.lang.String>",
".entityLongId: <java.lang.String>",
".entityId: <java.lang.Integer>"
]
Get Output Parameters for a Web Service
This API lets you retrieve parameters required by the web services including the type.
HTTP request
/metadata/parameters-output/[web-service]
curl --location --request GET 'https://192.168.99.100/metadata/parameters-output/oracle.e1.bssv.JP420000.SalesOrderManager.getItemListPrice' \
--header 'Token: eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIxMjMxMjMxIiwiaWF0IjoxNjM5NDkzNjE4LCJzdWIiOiJTdWJqZWN0IiwiaXNzIjoiSXNzdWUiLCJ1c2VyIjoiSkRFIiwicGFzc3dvcmQiOiJtb2R1czIwMjAhIiwiZW52aXJvbm1lbnQiOiJKRFY5MjAiLCJyb2xlIjoiKkFMTCIsInNlc3Npb25JZCI6MjQ4OTUxNDg3LCJleHAiOjE2Mzk0OTY2MTh9.2i1lLAPWarArD3oU5WINydpMMGkeRorOBhI-URJkw8c' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Accept-Encoding: gzip, deflate, br' \
--header 'TransactionId: 0' \
--data-raw '{}
'
JSON response example:
[
"e1MessageList: <oracle.e1.bssvfoundation.util.E1MessageList>",
".messagesAsString: <java.lang.String>",
".E1Messages: List <oracle.e1.bssvfoundation.util.E1Message>",
"..messageType: <java.lang.Integer>",
"..callObjError: <com.jdedwards.system.kernel.CallObjectErrorItem>",
"...fileName: <java.lang.String>",
"...dditem: <java.lang.String>",
"...alphaDescription: <java.lang.String>",
"...errorId: <java.lang.Integer>",
"...errorID: <java.lang.Integer>",
"...lineNumber: <java.lang.Integer>",
"...glossaryText: <java.lang.String>",
"...subText: <java.lang.String>",
"...errorLevel: <java.lang.Integer>",
"..messagePrefix: <java.lang.String>",
"..message: <java.lang.String>",
"showItemListPrice: List <oracle.e1.bssv.JP420000.valueobject.ItemListPriceRecord>",
".lotGrade: <java.lang.String>",
".location: <java.lang.String>",
".lotNumber: <java.lang.String>",
".lotPotency: <java.math.BigDecimal>",
".priceList: <java.math.BigDecimal>"
]
Get Payload Input for a Web Service
This API lets you retrieve a template to use as a payload to invoke a web service.
HTTP request
/metadata/payload-input/[web-service]
curl --location --request GET 'https://192.168.99.100/metadata/payload-input/oracle.e1.bssv.JP010000.AddressBookManager.getAddressBook' \
--header 'Token: eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIxMjMxMjMxIiwiaWF0IjoxNjM5NDkzNjE4LCJzdWIiOiJTdWJqZWN0IiwiaXNzIjoiSXNzdWUiLCJ1c2VyIjoiSkRFIiwicGFzc3dvcmQiOiJtb2R1czIwMjAhIiwiZW52aXJvbm1lbnQiOiJKRFY5MjAiLCJyb2xlIjoiKkFMTCIsInNlc3Npb25JZCI6MjQ4OTUxNDg3LCJleHAiOjE2Mzk0OTY2MTh9.2i1lLAPWarArD3oU5WINydpMMGkeRorOBhI-URJkw8c' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Accept-Encoding: gzip, deflate, br' \
--header 'TransactionId: 0' \
--data-raw '{}
'
JSON response example:
{
"businessUnit": "java.lang.String",
"address": {
"countyCode": "java.lang.String",
"countryCode": "java.lang.String",
"postalCode": "java.lang.String",
"stateCode": "java.lang.String"
},
"categoryCodesAddressBook": {
"categoryCode013": "java.lang.String",
"categoryCode012": "java.lang.String",
"categoryCode011": "java.lang.String",
"categoryCode010": "java.lang.String",
"categoryCode030": "java.lang.String",
"categoryCode019": "java.lang.String",
"categoryCode018": "java.lang.String",
"categoryCode017": "java.lang.String",
"categoryCode016": "java.lang.String",
"categoryCode015": "java.lang.String",
"categoryCode014": "java.lang.String",
"categoryCode002": "java.lang.String",
"categoryCode024": "java.lang.String",
"categoryCode001": "java.lang.String",
"categoryCode023": "java.lang.String",
"categoryCode022": "java.lang.String",
"categoryCode021": "java.lang.String",
"categoryCode020": "java.lang.String",
"categoryCode009": "java.lang.String",
"categoryCode008": "java.lang.String",
"categoryCode007": "java.lang.String",
"categoryCode029": "java.lang.String",
"categoryCode006": "java.lang.String",
"categoryCode028": "java.lang.String",
"categoryCode005": "java.lang.String",
"categoryCode027": "java.lang.String",
"categoryCode004": "java.lang.String",
"categoryCode026": "java.lang.String",
"categoryCode003": "java.lang.String",
"categoryCode025": "java.lang.String"
},
"entityName": "java.lang.String",
"entityTypeCode": "java.lang.String",
"languageCode": "java.lang.String",
"industryClassificationCode": "java.lang.String",
"entity": {
"entityTaxId": "java.lang.String",
"entityLongId": "java.lang.String",
"entityId": "java.lang.Integer"
}
}
Get Payload Output for a Web Service
This API lets you retrieve a sample response returned by a web service.
HTTP request
/metadata/payload-output/[web-service]
curl --location --request GET 'https://192.168.99.100/metadata/payload-output/oracle.e1.bssv.JP420000.SalesOrderManager.getItemListPrice' \
--header 'Token: eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIxMjMxMjMxIiwiaWF0IjoxNjM5NDkzOTA0LCJzdWIiOiJTdWJqZWN0IiwiaXNzIjoiSXNzdWUiLCJ1c2VyIjoiSkRFIiwicGFzc3dvcmQiOiJtb2R1czIwMjAhIiwiZW52aXJvbm1lbnQiOiJKRFY5MjAiLCJyb2xlIjoiKkFMTCIsInNlc3Npb25JZCI6MjQ4OTUxNDg3LCJleHAiOjE2Mzk0OTY5MDR9.yiih3zb2CbPZyg42VP8BE5oEhZbz43tm6CqxGw3vhiM' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Accept-Encoding: gzip, deflate, br' \
--header 'TransactionId: 0' \
--data-raw '{}
'
JSON response example:
{
"e1MessageList": {
"messagesAsString": "java.lang.String",
"E1Messages": [
{
"messageType": "java.lang.Integer",
"callObjError": {
"fileName": "java.lang.String",
"dditem": "java.lang.String",
"alphaDescription": "java.lang.String",
"errorId": "java.lang.Integer",
"errorID": "java.lang.Integer",
"lineNumber": "java.lang.Integer",
"glossaryText": "java.lang.String",
"subText": "java.lang.String",
"errorLevel": "java.lang.Integer"
},
"messagePrefix": "java.lang.String",
"message": "java.lang.String"
}
]
},
"showItemListPrice": [
{
"lotGrade": "java.lang.String",
"location": "java.lang.String",
"lotNumber": "java.lang.String",
"lotPotency": "java.math.BigDecimal",
"priceList": "java.math.BigDecimal"
}
]
}
Monitoring
Monitoring APIs provide information about microservice.
Connections Open
This API lets you retrieve and view a simple list of all user connected.
HTTP request
/monitor/connections
curl --location --request GET 'https://192.168.99.100/monitor/connections' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Accept-Encoding: gzip, deflate, br' \
--header 'TransactionId: 0' \
--data-raw '{}
'
JSON response example:
[
{
"Role": "*ALL",
"Active": true,
"User": "JDE",
"Environment": "JDV920",
"Tmp-Cache": "/tmp/jde/JDV920",
"Tmp-Folder": "/tmp/jde",
"Session": "421083912"
}
]
Logs
This API lets you retrieve logs giving a transaction Id.
HTTP request
/monitor/logs
curl --location --request GET 'https://192.168.99.100/monitor/logs' \
--header 'Accept: text/plain' \
--header 'Accept-Encoding: gzip, deflate, br' \
--header 'TransactionId: 20211214152930577' \
--header 'Content-Type: application/json' \
--data-raw '{}
'
JSON response example:
12:24:41.714 [grpc-default-executor-11] INFO c.acqua.jde.jdeconnectorserver.JDEConnectorServer - BEGIN TID: 20211214152441694======================================================================================
12:24:41.714 [grpc-default-executor-11] INFO c.acqua.jde.jdeconnectorserver.JDEConnectorServer - JDE ATINA Connection Pool
12:24:41.714 [grpc-default-executor-11] DEBUG c.a.a.j.wsservice.JDESingleWSClient - ATINA - JDEConnectorService: Is Connected to JDE?:false
12:24:41.715 [grpc-default-executor-11] DEBUG c.a.a.j.wsservice.JDESingleWSClient - ATINA - JDEConnectorService: Is Connected to JDE?:false
12:24:41.715 [grpc-default-executor-11] DEBUG c.a.a.j.wsservice.JDESingleWSClient - ATINA - JDEConnectorService: Is Connected to JDE?:false
12:24:41.736 [grpc-default-executor-11] INFO c.acqua.jde.jdeconnectorserver.JDEConnectorServer - -------------------------------------------------------------------------------
12:24:49.409 [grpc-default-executor-11] INFO c.acqua.jde.jdeconnectorserver.JDEConnectorServer - Starting LoggerUtil...
12:24:49.412 [grpc-default-executor-11] INFO c.acqua.jde.jdeconnectorserver.JDEConnectorServer - Starting LoggerUtil Filter:jde_atina_server_2021-12-14
12:24:49.424 [grpc-default-executor-11] INFO c.acqua.jde.jdeconnectorserver.JDEConnectorServer - Starting LoggerUtil Reading:jde_atina_server_2021-12-14.0.log
12:24:49.505 [grpc-default-executor-11] INFO c.acqua.jde.jdeconnectorserver.JDEConnectorServer - Starting LoggerUtil Thread:grpc-default-executor-11 Line: 12:24:41.714 [grpc-default-executor-11] INFO c.acqua.jde.jdeconnectorserver.JDEConnectorServer - 99999999999999999======================================================================================
Token
APIs to create and view tokens.
Create Token
To login using token will require generate a token before invoke login API. The administrator can use this API to generate a token.
HTTP request
/token/create
Header parameters
Parameter | Type | Description |
---|---|---|
TransactionId |
integer | Id used to get log inside JD Atina WS Microservices. optional. Use 0 to generate a transsaction ID inside JDE Atina Microservices |
Body parameters
JDE HTML Client Credentials.
Parameter | Type | Description |
---|---|---|
user |
string | JDE User mandatory |
password |
string | JDE Password mandatory |
environment |
string | JDE Environment mandatory |
role |
string | JDE Role mandatory |
tokenExpiration |
integer | Token expiration in milliseconds mandatory |
curl --location --request POST 'https://192.168.99.100/token/create' \
--header 'TransactionId: 0' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"user": "JDE",
"environment": "JDV920",
"password": "modus2020!",
"role": "*ALL",
"tokenExpiration": 480000
}
'
Header parameters returned
Parameter | Type | Description |
---|---|---|
Token |
string | Token created |
TransactionId |
integer | Transaction Id |
SessionId |
integer | 0. There is not a JDE connection yet. |
ChannelId |
integer | Connection Id between Rest API and WS Microservice. |
JSON response will be empty:
Parse Token
This API allows to see token detail.
HTTP request
/monitor/logs
Header parameters
Parameter | Type | Description |
---|---|---|
Token |
string | Token to parse. mandatory |
TransactionId |
integer | Id used to get log inside JD Atina WS Microservices. optional. Use 0 to generate a transsaction ID inside JDE Atina Microservices |
curl --location --request POST 'https://192.168.99.100/token/parse' \
--header 'Token: eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIxMjMxMjMxIiwiaWF0IjoxNjM5NTA3Mzk0LCJzdWIiOiJTdWJqZWN0IiwiaXNzIjoiSXNzdWUiLCJ1c2VyIjoiSkRFIiwicGFzc3dvcmQiOiJtb2R1czIwMjAhIiwiZW52aXJvbm1lbnQiOiJKRFY5MjAiLCJyb2xlIjoiKkFMTCIsInNlc3Npb25JZCI6MCwiZXhwIjoxNjM5NTA3ODc0fQ.Ogs48EupSc2VMFfYp10lvbdtEjE5Qk6pte9x3KKZPio' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Accept-Encoding: gzip, deflate, br' \
--header 'TransactionId: 0' \
--data-raw '{}
'
Header parameters returned
Parameter | Type | Description |
---|---|---|
Token |
string | Token updated |
TransactionId |
integer | Transaction Id |
SessionId |
integer | 0. There is not a JDE connection yet. |
ChannelId |
integer | Connection Id between Rest API and WS Microservice. |
JSON response example:
{
"user": "JDEWS",
"password": "No informed",
"environment": "JDV920",
"role": "*ALL",
"tokenExpiration": "14/12/2021 13:13:44",
"sessionId": 248951487
}
Operation
APIs to invoke Web Services
Invoke Web Service
Use this API to invoke available web services endpoints.
HTTP request
/operation/invoke/[web-service]
Header parameters
Parameter | Type | Description |
---|---|---|
Token |
string | Last Token returned last API invoked mandatory |
TransactionId |
integer | Id used to get log inside JD Atina WS Microservices. optional. Use 0 to generate a transsaction ID inside JDE Atina Microservices |
Body parameters
Web Service Payload. Use Get Payload Input for a Web Service
curl --location --request POST 'https://192.168.99.100/operation/invoke/oracle.e1.bssv.JP410000.InventoryManager.getItemPrice' \
--header 'Token: eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIxMjMxMjMxIiwiaWF0IjoxNjM5NTA3Mzk0LCJzdWIiOiJTdWJqZWN0IiwiaXNzIjoiSXNzdWUiLCJ1c2VyIjoiSkRFIiwicGFzc3dvcmQiOiJtb2R1czIwMjAhIiwiZW52aXJvbm1lbnQiOiJKRFY5MjAiLCJyb2xlIjoiKkFMTCIsInNlc3Npb25JZCI6MCwiZXhwIjoxNjM5NTA3ODc0fQ.Ogs48EupSc2VMFfYp10lvbdtEjE5Qk6pte9x3KKZPio' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Accept-Encoding: gzip, deflate, br' \
--header 'TransactionId: 0' \
--data-raw '{
"item": {
"itemId": 60003,
"itemUOMSecondary": "",
"itemProduct": "",
"itemCustomer": "",
"itemCatalog": "",
"itemDescription": "",
"itemFreeForm": "",
"itemUOMPrimary": ""
},
"branchPlantList": " 10"
}'
Header parameters returned
Parameter | Type | Description |
---|---|---|
Token |
string | Token renewed to use for next request. |
TransactionId |
integer | Transaction Id |
SessionId |
integer | JDE connection Id. |
ChannelId |
integer | Connection Id between Rest API and WS Microservice. |
JSON response will be related to Web Service invoked:
{}