Agent Skills: Grammarly Webhooks & Events

|

UncategorizedID: jeremylongshore/claude-code-plugins-plus-skills/grammarly-webhooks-events

Install this agent skill to your local

pnpm dlx add-skill https://github.com/jeremylongshore/claude-code-plugins-plus-skills/tree/HEAD/plugins/saas-packs/grammarly-pack/skills/grammarly-webhooks-events

Skill Files

Browse the full folder contents for grammarly-webhooks-events.

Download Skill

Loading file tree…

plugins/saas-packs/grammarly-pack/skills/grammarly-webhooks-events/SKILL.md

Skill Metadata

Name
grammarly-webhooks-events
Description
|

Grammarly Webhooks & Events

Overview

Grammarly's current API is request/response based — there are no push webhooks. For async operations (plagiarism detection), you poll for results. Build your own event system around Grammarly API results.

Instructions

Step 1: Plagiarism Polling with Callback

async function plagiarismWithCallback(
  text: string,
  token: string,
  onComplete: (result: any) => void
) {
  const createRes = await fetch('https://api.grammarly.com/ecosystem/api/v1/plagiarism', {
    method: 'POST',
    headers: { 'Authorization': `Bearer ${token}`, 'Content-Type': 'application/json' },
    body: JSON.stringify({ text }),
  });
  const { id } = await createRes.json();

  const poll = async () => {
    const res = await fetch(`https://api.grammarly.com/ecosystem/api/v1/plagiarism/${id}`, {
      headers: { 'Authorization': `Bearer ${token}` },
    });
    const result = await res.json();
    if (result.status === 'pending') { setTimeout(poll, 3000); return; }
    onComplete(result);
  };
  poll();
}

Step 2: Build Event Bus for Score Results

import { EventEmitter } from 'events';

const grammarlyEvents = new EventEmitter();

grammarlyEvents.on('score.completed', (data) => {
  if (data.overallScore < 60) console.warn('Low quality content detected');
});

grammarlyEvents.on('ai.detected', (data) => {
  if (data.score > 70) console.warn('Likely AI-generated content');
});

Resources

Next Steps

For performance, see grammarly-performance-tuning.