Skip to content

Replace Scryfall's API with custom API using Scryfall data#11093

Open
Eradev wants to merge 1 commit into
Card-Forge:masterfrom
Eradev:replace-scryfall-api
Open

Replace Scryfall's API with custom API using Scryfall data#11093
Eradev wants to merge 1 commit into
Card-Forge:masterfrom
Eradev:replace-scryfall-api

Conversation

@Eradev

@Eradev Eradev commented Jun 27, 2026

Copy link
Copy Markdown
Contributor

We've seen increased reports of throttling by Scryfall recently.

This replaces Scryfall's API with my own which uses Scryfall's bulk data to generate a lookup table to their CDN.

  • Bypass Scryfall's API for lookup (Only refreshes the DB once per day at around 2:00 AM EST);
  • Cloudflare-cached for speed;
  • Only implements /cards/named and /cards/{set}/{num};
  • Only return images.

I can give access to the repo if maintainers want access.

@Eradev Eradev added the Images label Jun 28, 2026
}

return String.format("%s/%s/%s?format=image&version=%s%s", editionCode, encodeUtf8(cardCollectorNumber),
return String.format("%s/%s/%s?version=%s%s", editionCode, encodeUtf8(cardCollectorNumber),

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since you are accepting get params, does format=image not just get ignored by your webserver?

@Eradev Eradev Jul 16, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes it is ignored.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So I feel like we shouldn't be making these line changes. Maybe just have a UI element called "Use Scryfall Mirror" that passes in the new URL instead of scryfalls?

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants