Skip to content

!currency is broken #490

Description

@eriemer1

Parsers/Currency Converter.js is calling an API that requires a key but the parser isn't providing one.

It is also silently failing because it will only post a message if there are rates in the response and does nothing to handle the error payload

Activity

  1. prakhar2000 commented on Sep 15, 2026

    @prakhar2000

    The parser is !convert, not !currency. Same file though (Parsers/Currency Converter.js).

    The API it's calling (api.exchangeratesapi.io) is dead. It wants an access key now, and even with one the free tier only lets you use EUR as the base. That's why nothing works.

    Frankfurter looks like a drop-in: no key, free, and it returns the same { base, rates } shape the script already uses. I tried https://api.frankfurter.dev/v1/latest?base=USD&symbols=EUR and it checks out.

    Two other small things in that file while I'm in there:

    1. the error message uses regular quotes so Slack prints ${fromCurrency} literally
    2. codes aren't uppercased, so !convert 10 usd to eur fails even if the API is fine

    Saw #501 is already up. Is Frankfurter ok with you, or do you want to go with that one?

  2. prakhar2000 commented on Sep 15, 2026

    @prakhar2000

    Noting overlap with #501, which also switches to Frankfurter.

    This PR additionally fixes two things in the same file: the fallback message
    prints ${fromCurrency} literally (double quotes instead of interpolation),
    and currency codes aren't uppercased, so !convert 10 usd to eur fails the
    rate lookup regardless of which API is used.

    Happy either way, if you'd rather merge #501, I can close this, or reopen
    the two remaining fixes as a separate PR on top of it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions