Skip to content
Snippets Groups Projects
Commit 2b11ef34 authored by torrespel's avatar torrespel
Browse files

Invoker CLI example

parent 85d83d34
No related branches found
No related tags found
No related merge requests found
Showing
with 600 additions and 59 deletions
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class
# C extensions
*.so
# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST
# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec
# Installer logs
pip-log.txt
pip-delete-this-directory.txt
# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.pytest_cache/
cover/
# Translations
*.mo
*.pot
# Django stuff:
*.log
local_settings.py
db.sqlite3
db.sqlite3-journal
# Flask stuff:
instance/
.webassets-cache
# Scrapy stuff:
.scrapy
# Sphinx documentation
docs/_build/
# PyBuilder
.pybuilder/
target/
# Jupyter Notebook
.ipynb_checkpoints
# IPython
profile_default/
ipython_config.py
# pyenv
# For a library or package, you might want to ignore these files since the code is
# intended to run in multiple environments; otherwise, check them in:
# .python-version
# pipenv
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
# However, in case of collaboration, if having platform-specific dependencies or dependencies
# having no cross-platform support, pipenv may install dependencies that don't work, or not
# install all needed dependencies.
#Pipfile.lock
# poetry
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
# This is especially recommended for binary packages to ensure reproducibility, and is more
# commonly ignored for libraries.
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
#poetry.lock
# pdm
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
#pdm.lock
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
# in version control.
# https://pdm.fming.dev/#use-with-ide
.pdm.toml
# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
__pypackages__/
# Celery stuff
celerybeat-schedule
celerybeat.pid
# SageMath parsed files
*.sage.py
# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/
# Spyder project settings
.spyderproject
.spyproject
# Rope project settings
.ropeproject
# mkdocs documentation
/site
# mypy
.mypy_cache/
.dmypy.json
dmypy.json
# Pyre type checker
.pyre/
# pytype static type analyzer
.pytype/
# Cython debug symbols
cython_debug/
# PyCharm
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
#.idea/
Pipfile 0 → 100644
[[source]]
url = "https://pypi.org/simple"
verify_ssl = true
name = "pypi"
[packages]
pymongo = "==3.12.0"
inject = "==4.3.1"
[dev-packages]
[requires]
python_version = "3.8"
# invoker-cli
# CAPIF_Invoker_GUI
This is the implementation of a CAPIF Invoker
* This repo is intended to be used as a test method for CAPIF services and services published on CAPIF.
## Getting started
## Prerequisites
Before executing the following code it is necessary to have raised an instance of [CAPIF](https://github.com/Telefonica/CAPIF_Future_Network_Lab.git).
To run Capif Invoker you must ensure to have docker and a docker compose version 2.10 or higher.
To make it easy for you to get started with GitLab, here's a list of recommended next steps.
## Set Up
This repo is designed to be executed from docker, to create the images and raise the instance it is only necessary to execute the following command:
```
./run.sh
Already a pro? Just edit this README.md and make it your own. Want to make it easy? [Use the template at the bottom](#editing-this-readme)!
```
## Add your files
- Before executing the run.sh command, note that it supports one parameter, this parameter is the CAPIF hostname, by default this field is 'capifcore'. Modify it if necessary or add the hostname when executing the run.sh command
- [ ] [Create](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#create-a-file) or [upload](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#upload-a-file) files
- [ ] [Add files using the command line](https://docs.gitlab.com/ee/gitlab-basics/add-file.html#add-a-file-using-the-command-line) or push an existing Git repository with the following command:
```
./run.sh <other_hostname>
```
cd existing_repo
git remote add origin https://labs.etsi.org/rep/ocf/example-clients/invoker-cli.git
git branch -M main
git push -uf origin main
```
```
## Integrate with your tools
- It is important to have the following environment variables in the docker-compose file:
```
- CAPIF_HOSTNAME=${CAPIF_HOSTNAME}
- CAPIF_PORT=8080
- REGISTER_HOSTNAME=register
- REGISTER_PORT=8084
- CAPIF_PORT_HTTPS=443
- CAPIF_CALLBACK_URL=host.docker.internal
- CAPIF_CALLBACK_PORT=8086
- [ ] [Set up project integrations](https://labs.etsi.org/rep/ocf/example-clients/invoker-cli/-/settings/integrations)
```
These environment variables refer to the registration services. By default, these are the ports and names that the CAPIF script uses when launching the different services. If during the deployment of CAPIF you modify these parameters, you must modify them so that they correspond to the new ones.
## Collaborate with your team
Now it is only necessary to enter inside the container by executing this command
- [ ] [Invite team members and collaborators](https://docs.gitlab.com/ee/user/project/members/)
- [ ] [Create a new merge request](https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html)
- [ ] [Automatically close issues from merge requests](https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#closing-issues-automatically)
- [ ] [Enable merge request approvals](https://docs.gitlab.com/ee/user/project/merge_requests/approvals/)
- [ ] [Automatically merge when pipeline succeeds](https://docs.gitlab.com/ee/user/project/merge_requests/merge_when_pipeline_succeeds.html)
## Test and Deploy
Use the built-in continuous integration in GitLab.
```
./terminal_to_py_aef.sh
- [ ] [Get started with GitLab CI/CD](https://docs.gitlab.com/ee/ci/quick_start/index.html)
- [ ] [Analyze your code for known vulnerabilities with Static Application Security Testing(SAST)](https://docs.gitlab.com/ee/user/application_security/sast/)
- [ ] [Deploy to Kubernetes, Amazon EC2, or Amazon ECS using Auto Deploy](https://docs.gitlab.com/ee/topics/autodevops/requirements.html)
- [ ] [Use pull-based deployments for improved Kubernetes management](https://docs.gitlab.com/ee/user/clusters/agent/)
- [ ] [Set up protected environments](https://docs.gitlab.com/ee/ci/environments/protected_environments.html)
```
***
Once inside the container you can run the provider command GUI by running
# Editing this README
```
./python main.py
When you're ready to make this README your own, just edit this file and use the handy template below (or feel free to structure it however you want - this is just a starting point!). Thank you to [makeareadme.com](https://www.makeareadme.com/) for this template.
```
## Suggestions for a good README
Every project is different, so consider which of these sections apply to yours. The sections used in the template are suggestions for most open source projects. Also keep in mind that while a README can be too long and detailed, too long is better than too short. If you think your README is too long, consider utilizing another form of documentation rather than cutting out information.
## Interacting with the GUI
The provider is prepared to make the necessary previous provisions automatically, but if the user is already register, you can remove the user using the command:
```
remove_user
```
## Name
Choose a self-explaining name for your project.
and register a new user with
```
register_user
```
## Description
Let people know what your project can do specifically. Provide context and add a link to any reference visitors might be unfamiliar with. A list of Features or a Background subsection can also be added here. If there are alternatives to your project, this is a good place to list differentiating factors.
The different .json files that must be saved in CAPIF are also added. To make the necessary provisions you just have to execute the following commands within the GUI
## Badges
On some READMEs, you may see small images that convey metadata, such as whether or not all the tests are passing for the project. You can use Shields to add some to your README. Many services also have instructions for adding a badge.
```
register_invoker
## Visuals
Depending on what you are making, it can be a good idea to include screenshots or even a video (you'll frequently see GIFs rather than actual videos). Tools like ttygif can help, but check out Asciinema for a more sophisticated method.
```
## Installation
Within a particular ecosystem, there may be a common way of installing things, such as using Yarn, NuGet, or Homebrew. However, consider the possibility that whoever is reading your README is a novice and would like more guidance. Listing specific steps helps remove ambiguity and gets people to using your project as quickly as possible. If it only runs in a specific context like a particular programming language version or operating system or has dependencies that have to be installed manually, also add a Requirements subsection.
```
discover_service
## Usage
Use examples liberally, and show the expected output if you can. It's helpful to have inline the smallest example of usage that you can demonstrate, while providing links to more sophisticated examples if they are too long to reasonably include in the README.
```
## Support
Tell people where they can go to for help. It can be any combination of an issue tracker, a chat room, an email address, etc.
```
register_security_context <api_name>
## Roadmap
If you have ideas for releases in the future, it is a good idea to list them in the README.
```
## Contributing
State if you are open to contributions and what your requirements are for accepting them.
```
get_security_auth <api_name>
```
For people who want to make changes to your project, it's helpful to have some documentation on how to get started. Perhaps there is a script that they should run or some environment variables that they need to set. Make these steps explicit. These instructions could also be useful to your future self.
### What are we doing?
- The previous commands are to register an invoker within CAPIF, discover the services that have been published and if there are any published services, create a security context to use those services.
You can also document commands to lint the code or run tests. These steps help to ensure high code quality and reduce the likelihood that the changes inadvertently break something. Having instructions for running tests is especially helpful if it requires external setup, such as starting a Selenium server for testing in a browser.
*If the first command returns a 401, it means that the token to interact the first time with CAPIF has expired, run the following command
## Authors and acknowledgment
Show your appreciation to those who have contributed to the project.
```
get_auth
```
## Call Service
```
call_service <api_name>
```
## License
For open source projects, say how it is licensed.
If the previous process has been executed correctly, the call_service command will call the first endpoint of the service that has been discovered.
## Project status
If you have run out of energy or time for your project, put a note at the top of the README saying that development has slowed down or stopped completely. Someone may choose to fork your project or volunteer to step in as a maintainer or owner, allowing your project to keep going. You can also make an explicit request for maintainers.
If you want to call another endpoint or modify the parameters that are sent to the service, you must modify the code directly
#!/bin/bash
docker compose down --rmi all --remove-orphans || true
# sudo rm ./invoker_gui/capif_onboarding/*
# sudo rm ./invoker_gui/demo_values.json && sudo rm ./invoker_gui/ca.crt && sudo rm ./invoker_gui/cert_req.csr && sudo rm ./invoker_gui/dummy.crt && sudo rm ./invoker_gui/private.key && sudo rm ./invoker_gui/ca_service.crt
# sudo rm ./invoker_gui/demo_values.json
# sudo rm ./invoker_gui/ca.crt
# sudo rm ./invoker_gui/cert_req.csr
# sudo rm ./invoker_gui/dummy.crt
# sudo rm ./invoker_gui/private.key
\ No newline at end of file
version: '3'
services:
invoker_gui:
image: invoker_gui
hostname: dummy
container_name: invoker_gui
build:
context: ./invoker_gui
volumes:
- ./invoker_gui:/usr/src/app
environment:
- CAPIF_HOSTNAME=${CAPIF_HOSTNAME}
- CAPIF_PORT=8080
- REGISTER_HOSTNAME=register
- REGISTER_PORT=8084
- CAPIF_PORT_HTTPS=443
- CAPIF_CALLBACK_URL=host.docker.internal
- CAPIF_CALLBACK_PORT=8086
extra_hosts:
- host.docker.internal:host-gateway
- capifcore:host-gateway
- one_provider_gui:host-gateway
- register:host-gateway
networks:
default:
external:
name: capif-network
\ No newline at end of file
FROM python:3.8
ENV PYTHONUNBUFFERED 1
RUN apt-get update && apt-get install -y jq && apt-get clean
RUN apt-get install -y iputils-ping
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
ADD requirements.txt /usr/src/app/
RUN pip install -r requirements.txt
ADD . /usr/src/app/
CMD ["sh", "prepare.sh"]
\ No newline at end of file
-----BEGIN CERTIFICATE-----
MIIDIzCCAgugAwIBAgIUPjek50q3tX1UluOOLMIa/cEWJGAwDQYJKoZIhvcNAQEL
BQAwEDEOMAwGA1UEAxMFY2FwaWYwHhcNMjQxMDAyMDg0OTIyWhcNMzQwOTMwMDg0
OTUyWjAQMQ4wDAYDVQQDEwVjYXBpZjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
AQoCggEBAMOL7sBvsZ0KjIDQYeJzwrHULL6aD0Jy1eak4Z3DRTl02YitYm9QFK3O
DOIVCyvxKkzmAHueEt4AP+b3dIjmdRJMVqRfs7Q1ml9u8BE7KmzfLWVTMi87XYyI
eHgZPpgbikoLdx4bYWV1PfWS9pJ0DIl4JLQGaCzAlafbaHlbt+5hYJSEmE/fQ3E8
3/P4+LDZcxxGxENwYXWv9Q1ckQreLSvGgzJGfFmhpS7UQU4hST5UDaxfownyx0C6
b+FetssHpZAA30eB1ZyuVX5Lr87VJVrMF3ccWtOB2W26pMNFNaP2OfuEvAaA0cGV
mc7LsOfd5gGD+0K1Hucc2GwkE75sDqUCAwEAAaN1MHMwDgYDVR0PAQH/BAQDAgEG
MA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFBGxHkUXJCvmQJSEN1o9n/w4EwSU
MB8GA1UdIwQYMBaAFBGxHkUXJCvmQJSEN1o9n/w4EwSUMBAGA1UdEQQJMAeCBWNh
cGlmMA0GCSqGSIb3DQEBCwUAA4IBAQAuIsKB1ZJvNV/C2BNanRiRA6nUTAzhBlEc
8+YzWFcb6xSlhu6n/d5tTsuikvu13l0QNBlNfemejvzEQrBzxF37jTxaP3+xGm5C
9y1Iy5yPWIkO4X8SgKwnS0eFUbR3WgBm3LLE8TNIVGRJAhA6ieynCLb0R5zY+1Lb
YyeiJHmbxjMxY8zbFHl/aY/ZDtikOFx5/242plHqSwnla49qSOZzWKZqiomIhlvi
NN5k8bsslDnj0CM61brTiiLFDfems2+uhsXJboRk3q8oPaWblVQbaOz6PrMMFpcZ
KTjMBi4onAAv5ZBsiDwaLedDTgn9bbRxI/81fBEFie1MEI0n6K1A
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIDKDCCAhCgAwIBAgIUAfHCMJ2YjjPHCYqIV8uJiJ+jXJ0wDQYJKoZIhvcNAQEL
BQAwEDEOMAwGA1UEAxMFY2FwaWYwHhcNMjQxMDAyMDg0OTIyWhcNMjkxMDAxMDg0
OTUyWjAnMSUwIwYDVQQDExxjYXBpZiBJbnRlcm1lZGlhdGUgQXV0aG9yaXR5MIIB
IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzXmNUk0wDajX21rykXinLK3d
fLoUkITe1T5pAojCqd4v6L+HIlRJ2oPtX3LXIeuwCscap+J0Zyu03/k/BDTns+/n
VE24BtAD5m6Bvb1sHVxlEbb/BZkUPXLbt0084qW43M8nZ2CGZplPoR34UknVeiyr
HJTZ+3Z3mRX0Kgr08qi4qoR2WYjaAWLLgFHwTHS6spvjYwY09p0aODi9JAOt+v8J
nj2HlzaJgPJftmQtJuBX0AfORqPYrMMdGkA2SHbmyKOD3gUU14ILhT/ByJLY1a2G
TlvSTSpnuWroAj9C1CID5mxE8NQva6HBUn/ER9YwXhvj9ofAej92UUS34Zg3uwID
AQABo2MwYTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4E
FgQUUj6zBAAeMN5yEqU5me0UWu8Yc9gwHwYDVR0jBBgwFoAUEbEeRRckK+ZAlIQ3
Wj2f/DgTBJQwDQYJKoZIhvcNAQELBQADggEBABgCBS8eH371bTm/b9rB/WGHMSPW
htEbWh8/4Wud4CAONlDA3jfjCEMskyNP4+mJFtn+qDmR3jx/4JEt3OXN+B/8iDsU
tNYD8YjX8GF/1yi3gXBjfbZM00bkNmhw8TZ+moayDpZATlZCY1xSgQYa2W0CWX8u
7+U5gjvh+RoOdhQGwqnV1B2TSiO0R6nreiDZFGSES0vBkYz1ZdOkSeTCeY6G+THO
+BreEfryf3RCdodKqWI5yCsF7UrAquZt+JHGKJVz7d6NfHnqrVYxhQ4TZffoy0i1
pnqCPFD124FHJjQjZjtF9lvrTQm4fsN1SsULikNQxajXM/KzYMRCP5Qh/n4=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIDgjCCAmqgAwIBAgIUSO2+0JoJJQqle5aAfLYumaU0YWwwDQYJKoZIhvcNAQEL
BQAwJzElMCMGA1UEAxMcY2FwaWYgSW50ZXJtZWRpYXRlIEF1dGhvcml0eTAeFw0y
NDEwMDIwOTEwMDdaFw0yNTAzMzAxMzEwMzdaMCwxKjAoBgNVBAMTIUlOVjY5YzE1
NjZiYTE4MGYxMGZmODRhZDA0M2IyODM3MTCCASIwDQYJKoZIhvcNAQEBBQADggEP
ADCCAQoCggEBAL6GKsvG+eIYUGod+4+zHcvhJ6XXCAQrSrqM0xXmmRCcugfLHgyR
mcxMTXKd2xT0xjzyiphnrbfxOyDTsI+WSYRuYhNs1YZSyRKs8GRf6mOJVyUWTn06
iSuaNTwSQB+i3HDDdfasbk8TwtDrHi6SZclL5gCxaOS1YzDgycUlAq2dbzAqe+Ni
HTcfY3R3Qlrj1xaf0qcxQy/iGA33lIzasrb5lKRniorvSZOFrW+mLY8BYB92Ggjj
GG03GTXhXDhNNX62CcAFH3qs5mbV5TlbxgoDDU7WKkpQuNcS4QtevpIJByYWyLvK
nUppBds9ThpU1WY+QP1ylX9ehZfels5TuUUCAwEAAaOBoDCBnTAOBgNVHQ8BAf8E
BAMCA6gwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMB0GA1UdDgQWBBTi
tM1HXEs9ShXyYhimzs++XcAMWDAfBgNVHSMEGDAWgBRSPrMEAB4w3nISpTmZ7RRa
7xhz2DAsBgNVHREEJTAjgiFJTlY2OWMxNTY2YmExODBmMTBmZjg0YWQwNDNiMjgz
NzEwDQYJKoZIhvcNAQELBQADggEBAFWa/SJL1BWcjRBwhXE8u4TYgoZ33ing8ZML
NmGsESVBaZS92SpFvDgOn5tjdY4jc9bzrtq02d3yn8PNOGsbFRGGgdOC9XHyHZXB
fw0sytUu1GwEYv7v0EFb1Aega1cv+BniJfJrWdrV8h97xRjx8unA+3d15UfN87wK
OZtqMZ7Xdm8nLNNl1vUopvStp0txsn4nbHXe0+nqOMQ66x1cipEI5LEUFVG/FT2e
XH2QwthAHMHu2w540m+W9+2irScJFKwpCDGRU6FmLsJ8yXwSGndbOpu53iKFbKk9
i03ZLJRIbgSK9TNH7y3B6zTIAlJvGyp3WzfTeQ/JIqcLMkKIlGU=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIDKDCCAhCgAwIBAgIUAfHCMJ2YjjPHCYqIV8uJiJ+jXJ0wDQYJKoZIhvcNAQEL
BQAwEDEOMAwGA1UEAxMFY2FwaWYwHhcNMjQxMDAyMDg0OTIyWhcNMjkxMDAxMDg0
OTUyWjAnMSUwIwYDVQQDExxjYXBpZiBJbnRlcm1lZGlhdGUgQXV0aG9yaXR5MIIB
IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzXmNUk0wDajX21rykXinLK3d
fLoUkITe1T5pAojCqd4v6L+HIlRJ2oPtX3LXIeuwCscap+J0Zyu03/k/BDTns+/n
VE24BtAD5m6Bvb1sHVxlEbb/BZkUPXLbt0084qW43M8nZ2CGZplPoR34UknVeiyr
HJTZ+3Z3mRX0Kgr08qi4qoR2WYjaAWLLgFHwTHS6spvjYwY09p0aODi9JAOt+v8J
nj2HlzaJgPJftmQtJuBX0AfORqPYrMMdGkA2SHbmyKOD3gUU14ILhT/ByJLY1a2G
TlvSTSpnuWroAj9C1CID5mxE8NQva6HBUn/ER9YwXhvj9ofAej92UUS34Zg3uwID
AQABo2MwYTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4E
FgQUUj6zBAAeMN5yEqU5me0UWu8Yc9gwHwYDVR0jBBgwFoAUEbEeRRckK+ZAlIQ3
Wj2f/DgTBJQwDQYJKoZIhvcNAQELBQADggEBABgCBS8eH371bTm/b9rB/WGHMSPW
htEbWh8/4Wud4CAONlDA3jfjCEMskyNP4+mJFtn+qDmR3jx/4JEt3OXN+B/8iDsU
tNYD8YjX8GF/1yi3gXBjfbZM00bkNmhw8TZ+moayDpZATlZCY1xSgQYa2W0CWX8u
7+U5gjvh+RoOdhQGwqnV1B2TSiO0R6nreiDZFGSES0vBkYz1ZdOkSeTCeY6G+THO
+BreEfryf3RCdodKqWI5yCsF7UrAquZt+JHGKJVz7d6NfHnqrVYxhQ4TZffoy0i1
pnqCPFD124FHJjQjZjtF9lvrTQm4fsN1SsULikNQxajXM/KzYMRCP5Qh/n4=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIDIzCCAgugAwIBAgIUPjek50q3tX1UluOOLMIa/cEWJGAwDQYJKoZIhvcNAQEL
BQAwEDEOMAwGA1UEAxMFY2FwaWYwHhcNMjQxMDAyMDg0OTIyWhcNMzQwOTMwMDg0
OTUyWjAQMQ4wDAYDVQQDEwVjYXBpZjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
AQoCggEBAMOL7sBvsZ0KjIDQYeJzwrHULL6aD0Jy1eak4Z3DRTl02YitYm9QFK3O
DOIVCyvxKkzmAHueEt4AP+b3dIjmdRJMVqRfs7Q1ml9u8BE7KmzfLWVTMi87XYyI
eHgZPpgbikoLdx4bYWV1PfWS9pJ0DIl4JLQGaCzAlafbaHlbt+5hYJSEmE/fQ3E8
3/P4+LDZcxxGxENwYXWv9Q1ckQreLSvGgzJGfFmhpS7UQU4hST5UDaxfownyx0C6
b+FetssHpZAA30eB1ZyuVX5Lr87VJVrMF3ccWtOB2W26pMNFNaP2OfuEvAaA0cGV
mc7LsOfd5gGD+0K1Hucc2GwkE75sDqUCAwEAAaN1MHMwDgYDVR0PAQH/BAQDAgEG
MA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFBGxHkUXJCvmQJSEN1o9n/w4EwSU
MB8GA1UdIwQYMBaAFBGxHkUXJCvmQJSEN1o9n/w4EwSUMBAGA1UdEQQJMAeCBWNh
cGlmMA0GCSqGSIb3DQEBCwUAA4IBAQAuIsKB1ZJvNV/C2BNanRiRA6nUTAzhBlEc
8+YzWFcb6xSlhu6n/d5tTsuikvu13l0QNBlNfemejvzEQrBzxF37jTxaP3+xGm5C
9y1Iy5yPWIkO4X8SgKwnS0eFUbR3WgBm3LLE8TNIVGRJAhA6ieynCLb0R5zY+1Lb
YyeiJHmbxjMxY8zbFHl/aY/ZDtikOFx5/242plHqSwnla49qSOZzWKZqiomIhlvi
NN5k8bsslDnj0CM61brTiiLFDfems2+uhsXJboRk3q8oPaWblVQbaOz6PrMMFpcZ
KTjMBi4onAAv5ZBsiDwaLedDTgn9bbRxI/81fBEFie1MEI0n6K1A
-----END CERTIFICATE-----
\ No newline at end of file
-----BEGIN PRIVATE KEY-----
MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQC+hirLxvniGFBq
HfuPsx3L4Sel1wgEK0q6jNMV5pkQnLoHyx4MkZnMTE1yndsU9MY88oqYZ6238Tsg
07CPlkmEbmITbNWGUskSrPBkX+pjiVclFk59OokrmjU8EkAfotxww3X2rG5PE8LQ
6x4ukmXJS+YAsWjktWMw4MnFJQKtnW8wKnvjYh03H2N0d0Ja49cWn9KnMUMv4hgN
95SM2rK2+ZSkZ4qK70mTha1vpi2PAWAfdhoI4xhtNxk14Vw4TTV+tgnABR96rOZm
1eU5W8YKAw1O1ipKULjXEuELXr6SCQcmFsi7yp1KaQXbPU4aVNVmPkD9cpV/XoWX
3pbOU7lFAgMBAAECggEABt+HtTS/KIMoiX995wP27/c2KzMr8JyQNFUmu0xHmtQQ
mP3gnmL1Sau6AofD0sh2y1WTnuZkm7Vp5OgGH1P0YIDr7Ff5hwA/DTusa26TYdZf
TLD2kWl2b9p/D6T357xEGBRREd5MF3G2zjshKlxxLBcfG8jKqC+L/cQqO0C3zUQH
27FitAX3CDhl563Yl99Pl1DN6zcfiWbBtDMTxCppgRq7QJRlXyXjCOfo2O+lEm2i
k6pe/ePWL/3d1gebfxIpZuT1lfBUNhcEsJevNriUOdWMD21hNILY14deRoEaM2Nx
vbqopJE9+0/jAiPnl+eYAt+Xy8C/OHFEwJBEqhWLwQKBgQD9pF+/oCjuVmlrkTra
4OlU0DjhB6osXIt2FbyVk0RtWgaUINWVqaFEGiHZOTZT4jCWgZYkDOw4yk2vTIXQ
zN+ska9bOq88XnNTyoaQoAwQCFI+7obDcNnXD81vRsQRgAd5NN/eGutRIIsMG6kH
+cmAnRPp3dAYdQh6Xxi5rgGqhQKBgQDAS5Uz0Ch5mQKd3zPSFMZLhqZ6g3OgLO9g
cCx9gBrlILhiVoKBQoMIEXmC9yzn0x/G53vJBRsA5ZQ+UCzYoXgmMiaLjrztDb6l
JDbhWHKAY/qcMP+cyNZ7TiNGvZs46hbfGygYmH44NQi9BxSIajVP6rGXGz6oVOo0
D7SmU2DvwQKBgB75KqQY58arELaNBpXh7zxnLPr116cRKgqifuP5FtsPqkv+cnaT
P1k0o7uGDAdUUMCgVHhUh6grtC7a9mBYFFxbcgF++hUyJ30s9x/EG5T9nyWGNTi6
mC92A406JAlLDB6WAVx7Bw9iHPi+i/aoXx3wkJT3fEjwSbe/0yIhiJyNAoGAFysE
FvIFbmEZB5xUygLmwUK/3BLqY2oGjT/2nEhK9UAz9uUlZB13XAl+8mCFcIjnUzeg
ml+bGUiPy9ItFQyfRTrVmgrgiE8XoR3z3sKhSQbCsv7UTTeFX+XSKju97+WES+0h
r5Tv4CXDn8KynpztP2uvad1Gd1GDxjH+OevhygECgYANRocYck2qZq/u9+3urdx0
xGHXBlbAJ2mOhb1XX9+HR76LRU1F9q0OnK+EWHY3XRZUOOic7NHzZAMe3fsSnCl8
OEQ9TxHTMGFTAJ+LqdQUpOcokpZiseWzXzMscwPO4zQpIeEx7rJreYMLeAkE+wlu
ImGJp1LJBqDgfFK1JohpOA==
-----END PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
MIIDVDCCAjygAwIBAgIUJgbQJL+DRCXTYsTJMn2lregCl6owDQYJKoZIhvcNAQEL
BQAwJzElMCMGA1UEAxMcY2FwaWYgSW50ZXJtZWRpYXRlIEF1dGhvcml0eTAeFw0y
NDA0MTAwOTMyMTFaFw0yNDEwMDYxMzMyNDFaMBUxEzARBgNVBAMTCnN1cGVyYWRt
aW4wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCgpx6j3WAE4sQkkmpl
GHMy5Cx/CnxfMGVKRl95vOw5KjlSXPFReimCbPo92QFf5ZKunTrT+1IOUmkGfotF
FrLbdB3TJvPg43aZ4oaMb+UrBF7tx9/Q4YIUcwsfttfyVwc0E+4Ms808CE6oAdi0
6FR5U4h6O0DXLTQJHVbYnOF2om4cRtgz1L4T/C42s3th76ZGJkOqbtt1Dp2hy0O5
1RQr+BeqGzha9c7sxiMSDwDltZTFlycgN5YkHL4c6TIZnIJm4P5p4zp6rt+KhTml
6IbECz7W6J8cjngIJpvRb3zDjhVleS9AJnmYj10mq8LexxTW5ATjxL6FAXgk7G5/
S7WpAgMBAAGjgYkwgYYwDgYDVR0PAQH/BAQDAgOoMB0GA1UdJQQWMBQGCCsGAQUF
BwMBBggrBgEFBQcDAjAdBgNVHQ4EFgQUdXL2ZyQlZattMFZJ4WwdcPvizdkwHwYD
VR0jBBgwFoAUB+CRarsbw5C7E2U6o0NCxf4phm4wFQYDVR0RBA4wDIIKc3VwZXJh
ZG1pbjANBgkqhkiG9w0BAQsFAAOCAQEAm6SiMFMinbfozIfXL5TKQLQafl/8OQWL
UNAAjp7TfBKQDzE3wRtVkJm4NWd/1gMtZASqaKZgdpDaxD9sAiKhV9Lc0vglxKJq
b2FNjk2y0p1P0KBKVWi8tgQCDDR37AjuJVnNz5mm6+PHyTiURwgzOOYPwP5Wkh4I
zI1P5K8aktmvO2bc5UeWSjM35z2NHG3ui/H+04qGsbWtS6F9buwrJRfTvNFSmBH4
2PULvpXXzAruVDEZrANbfE2PHGo1qItxNVxTy8WLDpLgfstY8EjPCYgQFY4FlOkN
PJFbprN6AOhxu659WkzVpt9ML9ZXWyZjGKoaAqTpSKxY0zt5HrFVAQ==
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIDKDCCAhCgAwIBAgIUQm8t7RmNnQTHYdeOtWQf0hFCr4owDQYJKoZIhvcNAQEL
BQAwEDEOMAwGA1UEAxMFY2FwaWYwHhcNMjQwNDA4MTI0MjEwWhcNMjkwNDA3MTI0
MjQwWjAnMSUwIwYDVQQDExxjYXBpZiBJbnRlcm1lZGlhdGUgQXV0aG9yaXR5MIIB
IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuqGomx0IO5w/uEw3i7uL0rSy
U3JDd0OjbOJWRoomNd3d0pMWlJvyCFHXKeRLuwx7z59InJV3iNtjAww6wQ6FnwYo
lnX5jOm5eLvJKM98PHncX4hNZ+Ieb72qJMZA9+CoNd/+BeV30XmEhGsCYZZnfiKG
1jLltMOZmYhegsDaC45g2FVzrFqqk+tCP67GWwBbQhNDCSeWH8IOGAnmpbn0acqz
X0PO26FzB64kDbCJ5VNn9UxFoTEsZlqgz4Ac73smtZgYraRcjEZmX8TGYTQGXxFA
5InAJ7oFPXjJm6y43kkxRo549tFGK+5zHXn8vZAtpi3cCqZvAfsAQc3ax/+a/wID
AQABo2MwYTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4E
FgQUB+CRarsbw5C7E2U6o0NCxf4phm4wHwYDVR0jBBgwFoAUOqQdf7hYjpeMju0M
Pbt2m2Sm1SEwDQYJKoZIhvcNAQELBQADggEBAFJuQRvw4Vu30I2IvXZU5bzmegmZ
nAF3M3u5OpaS3CMaHqZI5JUTSMWfAx15LFPsae19qL83bTAbhi9YWFmFARBYaH3w
er3IqV6F4zt7stM6J6pURF/LAXGF29Ncg1dqSFSVcRBd8UD7RL7+U8uIy0af7rkr
NfYepkGVW1d3nQyCePenWju+TTZ/Zl2OMvtI+mkqvP1OnWn6/cqQBzl54P2gFNIh
2TrrSHc/OqpCVWVVBkTXMDjAnJmUSa8UPZp/Bp65JLzNVod5vj6fcMvtIF0lwKd5
YuPi6zFvf0I7oNWLhFrj06jcGDMSn5OxDfzV8HOnbINmOh/lIJam2lUNTbQ=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIDIzCCAgugAwIBAgIUW/OZo3KH8p1vrMxBrG5ttozZ9BUwDQYJKoZIhvcNAQEL
BQAwEDEOMAwGA1UEAxMFY2FwaWYwHhcNMjQwNDA4MTI0MjEwWhcNMzQwNDA2MTI0
MjQwWjAQMQ4wDAYDVQQDEwVjYXBpZjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
AQoCggEBANPEQ1mE4bE45k+zrRJT/spKSSE8LtM4E0DsNcj6+iZEWgZxAdHlwpMK
mMKq4zxNAWahHrLkOHcbekS5Dca8P0uTjOFAavaJSwma+SAbq40ED5YBlFfflprr
k0Fg7EHiuhOUwjRdbVdWgUsrSgYzbwZjCPZD2Jz6V0gP25rk+wBZqJnH4FT6hIHy
12FtDItGuQql+g6bj7czWxLLOl6aBXAdwnMJlnJZriqtyi+WTMxZxRLo+nNgThd5
yHpiuMPEoEs6cxLaKZWvXM4Zhzv1zSQYi7T8et0qWM6dHD6DpRnWq+637+N5X+zu
6ssLyuyoGYyMjEvxf5wgENmi71ZPzbECAwEAAaN1MHMwDgYDVR0PAQH/BAQDAgEG
MA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFDqkHX+4WI6XjI7tDD27dptkptUh
MB8GA1UdIwQYMBaAFDqkHX+4WI6XjI7tDD27dptkptUhMBAGA1UdEQQJMAeCBWNh
cGlmMA0GCSqGSIb3DQEBCwUAA4IBAQASYhxjRoZukCV5uWCoIvuokOqG9KSfh1oq
CeQbZ+XXa6vyUskGXyg5gzYNJ9W4GNkDWIll6qdf0mCke4jXO1AgA+BxCJWLxUrc
f4WjLi8TnBxtoVvJlkV67wvoSF+Rt5hihf/pwMOWQ3usnmaco2qd9KIn0Jd3D6zw
qxDE2U9VeQDpJU0EpNVBw9pnIyMY3Mw3jzdNBoXi79+CirhbWDoBLmXZHM2/frmL
TXrXmULtk6sn/evpLpVJgKxWgjyVLx4XipColXPJq1Dk2fGU+sOL2Z9n+dtPtkla
h+3fRM4GNpg6QoIEk8NL967uJOGHcvP07yvMaM9FKwFb+RJgopmA
-----END CERTIFICATE-----
\ No newline at end of file
-----BEGIN PRIVATE KEY-----
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCgpx6j3WAE4sQk
kmplGHMy5Cx/CnxfMGVKRl95vOw5KjlSXPFReimCbPo92QFf5ZKunTrT+1IOUmkG
fotFFrLbdB3TJvPg43aZ4oaMb+UrBF7tx9/Q4YIUcwsfttfyVwc0E+4Ms808CE6o
Adi06FR5U4h6O0DXLTQJHVbYnOF2om4cRtgz1L4T/C42s3th76ZGJkOqbtt1Dp2h
y0O51RQr+BeqGzha9c7sxiMSDwDltZTFlycgN5YkHL4c6TIZnIJm4P5p4zp6rt+K
hTml6IbECz7W6J8cjngIJpvRb3zDjhVleS9AJnmYj10mq8LexxTW5ATjxL6FAXgk
7G5/S7WpAgMBAAECggEALljoWwfzupUdVxuyfCX4nhb7y07gIKoanrn8s2dQkxFe
ZieQKxxeO1VrQEqJvfvCPIP5w8w+mQknaYs6bJ0mzm8KZ69WLmwQ/EZA4OUrLSTe
qiS+qklUuMeTzvt2A2EeH+UcCSgaLpaK8qdNuKtKK5JwziqoAyv0VijTtDxWQ14V
9dTBzT0kdPPVq3w9Df0kY1/p1h6URCgMP5SBmfN37q/pzNxkFRT3pKCKgzGTlGQ8
Z50yWKyQe4vQZ9zvTAhFpfQH5RfEtXZW+yfllI/gxEK6B09SUmXHdkbGN/KJvuRu
TY7oCy2nLP1svAha7Le+rEFJsZansMH2ndFBgIxkrQKBgQDNmnkr4xHtRsKnw9dS
hJiD+bkYY7rV0gi0YfseCN250tif2a0t3wK5OutTYoOvavPhhBjViZ9cVgZdgRnT
vxL/4nE+zQDeY7MRtO7KcHLEuDICf+4cymkUrPI0W+qpdVkzX3nZEmefecw9SP4h
5LSvMNa104Gkwc29OkH3r7ZrowKBgQDICAPrTay1gPotRSnz8ocZ17U50VHWq5by
GIzuswX6R69/35582Yz04R7HrHS1qX/DbLD448YK+3udxeM6we8hrS6+xYydJWqi
2g62o7I1nxo8tHCtYbqrBcOtYhehOpkrtUF8FuTodryaGTZULV2eqlg9WtzQ5f2s
bo9yk1TuQwKBgQCpPj3+RVVNZxD2vjvxvho5kQevLvDt742gxoLKj2vM+eW9d5aZ
itiYFwr9Qbu6WyTT/0PeCwI2JM3qjEnxRnjiT8j+dAwCBDm0Gqbx1yxyCFmKOzqL
Uoa7MT3SodMBmQpLQo1vhTntSXo4/GvNBJFDIMWtOKSgNbQgzuLcezSDVwKBgAWu
5J2c2VlWzsTWgDikHV6ImGeKIO8edO1v8SEfCP5xZvUVH2WgsLaMZtl5dt9qb2zX
+7c2kXviZUK4SppyxB6K0xcsebBFTeBOnbhmsjt/x7kNz129txYA1expKw6zoYJy
Zefmpp5MMVOXf8moeE53vIYRvNBamHh7s6unr/QNAoGAeepYYJTTfQTCA5U255aS
dh9Co4uXV8PEMfalCgYCvr8OV99nb8VBkRAkCvUVx4UmT8jmg0gz5Yw4uFUWYssx
stnfDnJciQ+gJrZuCTu3iMvZ0sYVK8/kieXrvlAM6UeNw+YkJaZGXl0YL4+nDrst
zCTkixXQn2Rz18WIaqnzFo8=
-----END PRIVATE KEY-----
{
"folder_to_store_certificates": "/usr/src/app/capif_onboarding",
"capif_host": "capifcore",
"capif_http_port": "8080",
"capif_https_port": "443",
"capif_netapp_username": "test_netapp_23",
"capif_netapp_password": "test_netapp_password",
"capif_callback_url": "http://192.168.1.11:5000",
"description": ",test_app_description",
"csr_common_name": "test_app_common_name",
"csr_organizational_unit": "test_app_ou",
"csr_organization": "test_app_o",
"crs_locality": "Madrid",
"csr_state_or_province_name": "Madrid",
"csr_country_name": "ES",
"csr_email_address": "test@example.com"
}
\ No newline at end of file
[credentials]
invoker_username = ocf_user
invoker_password = user_pass
invoker_description = invoker
invoker_email = ocf@gg.com
invoker_enterprise = ETSI
invoker_country = Spain
invoker_purpose = Use OCF
invoker_phone = +123456789
invoker_web = https://ocf.etsi.org/
capif_callback_ip = host.docker.internal
capif_callback_port = 8086
nef_ip = host.docker.internal
nef_port = 8888
nef_callback_ip = host.docker.internal
nef_callback_port = 8085
\ No newline at end of file
{"refresh_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFkbWluIiwiZXhwIjoxNzMwNDUxNjEwfQ.iSDPI_mcJctnHvOnoiAmK5mh-0-EjiNjy8TRqVKxCus", "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFkbWluIiwiZXhwIjoxNzI3ODYwMjEwfQ.p6GZrbQW5Mh8q4js2XwS1wBtQl9uN6V1BXxU6Pygd-c", "capif_access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTcyNzg1OTYxNiwianRpIjoiNmY0NmQwZGItZDYyZS00MmRjLTg3NGYtNTlkYmI5NDEwN2E0IiwidHlwZSI6ImFjY2VzcyIsInN1YiI6Im9jZl91c2VyIGRmNjhjYmVjLWFlZGEtNWJmZi05OTQ4LTA2N2Q5NDFiZDI0ZCIsIm5iZiI6MTcyNzg1OTYxNiwiY3NyZiI6IjgyNmE0NThmLWUxNTMtNDQ0OS1hYTNhLWE1NmI5OGY2MjFkZCIsImV4cCI6MTcyNzg2MDUxNn0.GM9Yh7dwChKfyw27fhllX98W_RAE7Dh0Oiv5km5B0CLDgl9TkdXD2tRRSJdarxdiY062btFE8gG6jd9SiW9NoO6ONjfo0da934hhrp1RzzbPH0g41jlmbp-ntr5Ozf5wQktjMpa__JkA1TOITNxxj1RuMnP6R_OeegrwIE7ibkOlew1tIyihV8-aoigN2zkEGXciP9pr2hORfCpk_8zSexwUHdU0rsznzDJh3P9UDFaAVhXfS0Nr4xgSzCxX0LGtsVqehqSAefJRHohDWu4rXQPi0Ux2hs9oth5Oam8eLZQD6rDyg_OGQsNNtRPEKkSUm288gdCldnYYSHt47ulNug", "ccf_api_onboarding_url": "api-provider-management/v1/registrations", "ccf_discover_url": "service-apis/v1/allServiceAPIs?api-invoker-id=", "ccf_onboarding_url": "api-invoker-management/v1/onboardedInvokers", "ccf_publish_url": "published-apis/v1/<apfId>/service-apis", "ccf_security_url": "capif-security/v1/trustedInvokers/<apiInvokerId>", "api_id_0": "aa12a489891bb841c64c1d625de0ec", "api_name_0": "demo_api_OCF", "aef_id_0": "AEF3b01bd7e8cc4a392996a2a5ff0eec9", "demo_ipv4_addr_0": "one_provider_gui", "demo_port_0": 8088, "demo_url_0": "/hello", "num_apis": 1, "netapp_service_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTcyNzg2MDM0MSwianRpIjoiY2Y5ZDljMjUtM2Y3Yi00MDM4LWFjMjgtZTA3OTE4M2FiMjBiIiwidHlwZSI6ImFjY2VzcyIsInN1YiI6IklOVjY5YzE1NjZiYTE4MGYxMGZmODRhZDA0M2IyODM3MSIsIm5iZiI6MTcyNzg2MDM0MSwiY3NyZiI6IjNiMTY1OTYzLTVlZGMtNDMyZi1iM2MyLTJmOTZjNTU1ZWI0YyIsImV4cCI6MTcyNzg2MDk0MSwiaXNzIjoiSU5WNjljMTU2NmJhMTgwZjEwZmY4NGFkMDQzYjI4MzcxIiwic2NvcGUiOiIzZ3BwI0FFRjNiMDFiZDdlOGNjNGEzOTI5OTZhMmE1ZmYwZWVjOTpkZW1vX2FwaV9PQ0YiLCJyZXNfb3duZXJfaWQiOm51bGx9.lPDi8PMauEF4-wzXUv0r7NFLIqXLQFy79KS1yPUiRbMkzerF9ivziE5h9lu93MmNMu7mRYIlZF9jAGWD37paFEFSzw69J81JsYOr8_GVIr44_r4YYmS2W8XYULoBV3vplCmTiPncdsUJyH9Xwg9Q-BgHHiDjkWbBOMbOzkwfIEfO2YLuTFNmKwjA-QLz0A-d5Nr7OIyPJ97xLx-K16m70lm7TNDElZE5nTmJKtWAZsPaZINIISUhQbbkhaYKbXLCPJ69xQUjexzrjfTiiUvOdMOE2arAHisMsSY2KdUjeqjiGZXb0h0tbfTzeMAqp1RQVwEfH1ELOywh_tfn86rISA"}
\ No newline at end of file
{
"events": ["SERVICE_API_AVAILABLE",
"SERVICE_API_UNAVAILABLE",
"SERVICE_API_UPDATE",
"API_INVOKER_AUTHORIZATION_REVOKED"],
"notificationDestination": "http://10.95.47.147:2223",
"supportedFeatures": "fffffff",
"securityInfo": [
{
"authenticationInfo": "authenticationInfo",
"authorizationInfo": "authorizationInfo",
"interfaceDetails": {
"ipv4Addr": "10.95.47.147",
"securityMethods": ["PSK"],
"port": 2223
},
"prefSecurityMethods": ["PSK", "PKI", "OAUTH"]
},
{
"authenticationInfo": "authenticationInfo",
"authorizationInfo": "authorizationInfo",
"prefSecurityMethods": ["PSK", "PKI", "OAUTH"]
}
],
"websockNotifConfig": {
"requestWebsocketUri": true,
"websocketUri": "websocketUri"
},
"requestTestNotification": true
}
\ No newline at end of file
{
"notificationDestination" : "http://X:Y/netapp_callback",
"supportedFeatures" : "fffffff",
"apiInvokerInformation" : "dummy",
"websockNotifConfig" : {
"requestWebsocketUri" : true,
"websocketUri" : "websocketUri"
},
"onboardingInformation" : {
"apiInvokerPublicKey" : ""
},
"requestTestNotification" : true
}
\ No newline at end of file
{
"securityInfo": [],
"notificationDestination": "https://mynotificationdest.com",
"requestTestNotification": true,
"websockNotifConfig": {
"websocketUri": "string",
"requestWebsocketUri": true
},
"supportedFeatures": "fff"
}
\ No newline at end of file
{
"name": "OCF_USER"
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment