Skip to content

Support rate limit groups for specific routes #369

@OleksandrBoiko1

Description

@OleksandrBoiko1

Prerequisites

  • I have written a descriptive issue title
  • I have searched existing issues to ensure the feature has not already been requested

🚀 Feature Proposal

It'll be great to have an option to apply rate limit for this two endpoints, not for the whole project. Something that required here. Because solution from issues is not working

Important notice, I mean that rateLimit should calculate calls for this two endpoints, not separate

const routes: FastifyPluginAsync = async function (f) {
  const fastify = f.withTypeProvider<ZodTypeProvider>();

  fastify.post(
    '/',
    {
      schema: {
        tags: SCHEMA_TAGS,
        body: BodySchema,
        response: {
          200: ResponseSchema
        }
      }
    },
    async (req) => {
      // Doing something
    }
  );

  fastify.get(
    '/',
    {
      schema: {
        tags: SCHEMA_TAGS,
        response: {
          200: ResponseSchema
        }
      }
    },
    async (req) => {
      // Doing something
    }
  );
};

export default routes;

Thanks!

Motivation

Usefull feature!

Example

Register fastifyRateLimit only for encapsulate endpoints
fastify.register(fastifyRateLimit, { config: { rateLimit: { max: 3, timeWindow: '1 minute' } } })

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions