Skip to end of banner
Go to start of banner

Interesting information for FOLIO SysAdmins

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

SMTP configuration


To
retrieve a list of SMTP entries:

GET /configurations/entries?query=module=SMTP_SERVER


To create a new SMTP entry:

POST /configurations/entries

{
     "module": "SMTP_SERVER",
     "configName": "email",
     "code": "EMAIL_FROM"
     "description": "smtp from",
     "default": true,
     "enabled": true,
     "value": "noreply@folio.org"
}


To delete a SMTP entry:

DELETE /configurations/entries/{entry_id}

  • Entry ID can be looked up in the result of a GET call.


To update an existing entry:

PUT /configurations/entries/{entry_id}

{
     "module": "SMTP_SERVER",
     "configName": "email",
     "code": "EMAIL_FROM",
     "description": "smtp from",
     "default": true,
     "enabled": true,
     "value": "noreply@folio.org"
}

  • Entry ID can be looked up in the result of a GET call.

 

Minimum viable configuration for module  SMTP_SERVER  consists of 5 entries:

  • EMAIL_SMTP_HOST
  • EMAIL_SMTP_PORT
  • EMAIL_USERNAME
  • EMAIL_PASSWORD
  • EMAIL_FROM


Custom headers

Custom headers are configured by creating entries in mod-configuration with following (required) properties

{
     "module": "SMTP_SERVER",
     "configName": "email.headers",
     "code": "HEADER_NAME_HERE",
     "value": "HEADER_VALUE_HERE"
}

 

Where HEADER_NAME_HERE should be replaced with the name of your custom header, e.g. X-SES-CONFIGURATION-SET, and HEADER_VALUE_HERE should be replaced with desired value.

Values of properties module and configName should NOT be changed, and are required in order to be discovered by mod-email and treated as custom header configurations.

You can configure as many custom headers as you want as long as they have different code values.


Troubleshooting problems 

Logical chain:

1)  Check notification system

2)  Check SMTP configuration (setup and working)

3)  Check email status (/emails):


GET /email
Available query parameters:

    • offset: (integer - default: 0 - minimum: 0 - maximum: 2147483647)
    • limit: (integer - default: 10 - minimum: 0 - maximum: 2147483647)
    • query: (string) Example: ?query=status=FAILURE
      more info about CQL: http://zing.z3950.org/cql/intro.html


Example request with parameters.
/email?limit=100&query=status=FAILURE+and+to=student@folio.org


Fields to look at:

    • status (FAILURE when sending failed)
    • message (contains error message when sending failed)


Possible error messages:

    • Error in the 'mod-email' module, the module didn't send email | message: invalid email address


SMTP configuration issues:

    • Error looking up config at url=%s | Expected status code 200, got %s | error message: %s
    • The 'mod-config' module doesn't have a minimum config for SMTP server, the min config is: %s

 

4)  Check the list of scheduled notices:
GET /scheduled-notice-storage/scheduled-notices

Notices can be filtered by loan, recipient, triggering event, etc:
GET /scheduled-notice-storage/scheduled-notices?query=recipientUserId==429d212c-c646-4c75-ba3d-c16216491123

 

5)  More on scheduled notices API: here

  • Check logs in the following modules:
    mod-circulation, mod-email, mod-template-engine, mod-sender, mod-notify

    Okapi logs:
    vagrant ssh
    /var/log/folio/okapi/okapi.log

    Specific module logs:
    vagrant ssh
    docker ps (to find container id)
    docker logs {container_id} (more on this command here)

 

 

 

  • No labels