Read whistleblowing channel metadata
const url = 'https://secure.ethicsportal.eu/organizations/example/whistleblower/portal.json';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://secure.ethicsportal.eu/organizations/example/whistleblower/portal.json \ --header 'Authorization: Bearer <token>'Return the whistleblowing channel of one organisation: its ID, whether it is active and the URL of its online reporting form. Any member’s personal token can read it.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Obfuscated organisation ID returned by identity.
Header Parameters
Section titled “Header Parameters”The ETag of a response you already hold. If nothing changed, the response is 304 Not Modified with no body. It still counts toward rate limits and, where reads are audited, the audit trail.
Responses
Section titled “Responses”Metadata only. Dates describe recorded workflow state, not proof of notification delivery.
object
Example
{ "id": "QATEST12", "active": true, "reporting_form_url": "https://secure.ethicsportal.eu/p/QATEST12", "configuration_url": "https://secure.ethicsportal.eu/organizations/gHiJkl/whistleblower/portal/configuration.json", "documents_url": "https://secure.ethicsportal.eu/organizations/gHiJkl/whistleblower/documents.json"}Headers
Section titled “Headers”Weak validator of this response body. Send it back as If-None-Match.
Not modified since the ETag sent in If-None-Match. No body.
Invalid query or cursor
object
object
Where to tell EthicsPortal what went wrong: POST product feedback here with the same token.
Example
{ "error": { "code": "invalid_request", "feedback_url": "https://secure.ethicsportal.eu/me/feedback.json" }}Missing, invalid, expired or revoked bearer token
object
object
Where to tell EthicsPortal what went wrong: POST product feedback here with the same token.
Example
{ "error": { "code": "invalid_token", "feedback_url": "https://secure.ethicsportal.eu/me/feedback.json" }}Headers
Section titled “Headers”Bearer realm=“EthicsPortal”
Required agreement not accepted or permission denied
object
object
Where to tell EthicsPortal what went wrong: POST product feedback here with the same token.
Example
{ "error": { "code": "agreement_required", "feedback_url": "https://secure.ethicsportal.eu/me/feedback.json" }}Missing or inaccessible organisation or resource, or feature disabled
object
object
Where to tell EthicsPortal what went wrong: POST product feedback here with the same token.
Example
{ "error": { "code": "not_found", "feedback_url": "https://secure.ethicsportal.eu/me/feedback.json" }}Rate limit exceeded
object
object
Where to tell EthicsPortal what went wrong: POST product feedback here with the same token.
Example
{ "error": { "code": "rate_limited", "feedback_url": "https://secure.ethicsportal.eu/me/feedback.json" }}Headers
Section titled “Headers”60 seconds