O.Z.O.R.A. Emails API (0.0.1)

Download OpenAPI specification:

Email sending service.

Git Commit ID: 6cb74c5c6f21a394787dd1ee692443b2710091a2
Software Version: 0.0.1
Build: 2026-10-21 10:59:08

Emails

Send email

Queues an email for sending via the emails microservice. The email is saved to the database and will be sent by the scheduled child process.

Authorizations:
bearerAuth
Request Body schema: application/json
required
string or object

Sender address. Falls back to backup SMTP auth user if not provided.

to
required
string <email>

Recipient email address

subject
required
string

Email subject line

html
required
string

HTML email body

cc
string

CC email address(es)

flagPriority
boolean

If true, email is prioritized

Array of objects

Array of file attachments

Responses

Request samples

Content type
application/json
{
  • "from": "string",
  • "subject": "Welcome to the platform",
  • "html": "<h1>Hello</h1><p>Welcome!</p>",
  • "cc": "string",
  • "flagPriority": true,
  • "attachments": [
    ]
}

Response samples

Content type
application/json
{
  • "message": "Email queued for sending.",
  • "id": 42
}

Error

Report frontend error

Receives a frontend error report, logs it to the database, and sends a notification email to the configured LOG_EMAIL_TO addresses. Only processes reports in production environment.

Authorizations:
bearerAuth
Request Body schema: application/json
required
required
object
required
object
required
object

Responses

Request samples

Content type
application/json
{
  • "error_info": {
    },
  • "error": {
    },
  • "browser": {
    }
}

Response samples

Content type
application/json
{
  • "message": "Error reported"
}

Defaults

Public defaults map for static sites (shared-secret protected)

Returns the current defaults as a flat keyword - > value map, for consumers that cannot present a rotating service JWT, for example the static sites.

Only the defaults with pub. prefix are returned.

This is NOT a JWT endpoint. It is guarded by a shared secret sent in the X-Defaults-Key header.

Responds with Cache-Control: private, max-age=300. Not public, so shared caches never serve it to callers without the key.

header Parameters
X-Defaults-Key
required
string

Shared secret. Must equal the emails service's DEFAULTS_PUBLIC_KEY.

Responses

Response samples

Content type
application/json
{
  • "pub.ticket.daad.hu-main-page-html": "<h1>DAAD Gathering</h1>",
  • "pub.ticket.ozorafestival.eu-main-page-html": "<h1>O.Z.O.R.A. Festival</h1>"
}

List all defaults

Returns every row from the defaults table, ordered by sort_order (then keyword). Requires the Priv emails_defaults_edit permission.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "defaults": [
    ]
}

Get the defaults change logs

Returns every log entry that has a value in the id_default column. Requires the Priv emails_defaults_edit permission.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "logs": [
    ]
}

Edit one or more defaults values and/or sort orders

Updates the value and/or sort_order of one or more defaults records, writes a log entry for each changed record, then distributes the new defaults to the consuming services (accounts, tickets, items, vehicles) when at least one value changed. Each change must contain value or sort_order (or both). Requires the Priv emails_defaults_edit permission.

Authorizations:
bearerAuth
Request Body schema: application/json
required
required
Array of objects non-empty

One entry per defaults record to update. Each id must be unique within the request; a repeated id is rejected with 400.

Responses

Request samples

Content type
application/json
{
  • "changes": [
    ]
}

Response samples

Content type
application/json
{
  • "message": "Defaults updated.",
  • "updated": [
    ],
  • "distribution": {
    }
}

Get the current defaults for other services (internal only)

Internal endpoint used by other services to initialize their local defaults.json during startup. Only service-to-service calls (service JWT) are accepted.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "defaults": {
    },
  • "revision": 1786190488163
}