Ebox Enterprise Federation Service
The Ebox Federation Service allows to
- Know the list of Document Providers
- Know the preferences of a particular e-Box (enterprise)
Search Ebox Enterprise Preferences
A POST /eboxPreferences/search
call allows to know whether the enterprise has opt for receiving his messages exclusively in e-Box or when he visited his e-Box for the last time.
The OAuth scope needed for this request is scope:documentmanagement:ebox:enterprise:federation-rest:preference
.
Example:
Request: POST /eboxPreferences/search
with json body
{
"eboxType": "ENTERPRISE",
"eboxIdType": "EnterpriseNumber",
"eboxIdValueList": ["0474028805","0212148896","0800002352"]
}
The service returns a list of objects for each existing e-Box in the request. For example, if we send the request above and if the two first e-Box in the list exist, we can get :
[
{
"eboxId": {
"eboxType": "enterprise",
"eboxIdValue": "0474028805"
},
"exclusivelyEbox": false
},
{
"eboxId": {
"eboxType": "enterprise",
"eboxIdValue": "0212148896"
},
"exclusivelyEbox": true,
"lastConnectionDate": "2022-08-23T00:00:00+02:00"
}
]
If none of the e-Box exist, the result is an empty list.
[]
What are e-Box enterprise preferences for?
There are two use cases for e-Box enterprise preferences
1) You implement the /publishMessage
endpoint of a Document Provider. In this case you should call e-Box Preferences in order to know whether the user already has an e-Box or not. If he does not have an e-Box, a special status code needs to be sent in the reply.
2) You want to know if someone is using his e-Box in order to decide on whether to send via messages via e-Box or via Paper. This use case mostly applies to Document senders sending messages to enterprises.
Consult Citizen Consent
This feature is currently in acceptance environment and will arrive in production soon.
A POST /citizenEboxConsents/search
call allows to know if a citizen accepted the terms and condition to use the e-Box Citizen service.
A Document Sender must check if the citizen gave the consent before publishing to the citizen's e-Box.
Example:
For the following example, let's assume that the citizen with the SSIN 12345678901 accepted the terms and condition and the citizen with the SSIN 12345678902 never opened the e-Box or did not accepted the terms and condition or revoked the consent or does not exist. Then :
Request: POST /eboxPreferences/search
with json body
{
"ssins":["12345678901","12345678902"]
}
And the result is
[
{
"eboxId": {
"eboxType": "citizen",
"eboxIdValue": "12345678901"
},
"hasConsent": true
},
{
"eboxId": {
"eboxType": "citizen",
"eboxIdValue": "12345678902"
},
"hasConsent": false
}
]