Skills Development Set Up Grammarly API Authentication

Set Up Grammarly API Authentication

v20260423
grammarly-install-auth
This guide provides a comprehensive walkthrough for authenticating and initializing the Grammarly SDK/CLI. Learn how to use OAuth 2.0 Bearer tokens to securely connect to Grammarly's services (including Writing Score, AI Detection, and Plagiarism Detection). Use this skill when setting up a new integration, handling API key configuration, or managing token refreshing in a development project.
Get Skill
229 downloads
Overview

Grammarly Install & Auth

Overview

Configure Grammarly API authentication using OAuth 2.0 Bearer tokens. Grammarly provides three main APIs: Writing Score API, AI Detection API, and Plagiarism Detection API. All use the same auth pattern via api.grammarly.com.

Prerequisites

  • Grammarly Enterprise account with API access
  • OAuth credentials from Grammarly admin portal
  • Required scopes: scores-api:read, scores-api:write

Instructions

Step 1: Configure Environment

# .env (NEVER commit)
GRAMMARLY_CLIENT_ID=your_client_id
GRAMMARLY_CLIENT_SECRET=your_client_secret
GRAMMARLY_ACCESS_TOKEN=  # Populated after OAuth

Step 2: Obtain Access Token

// auth.ts
import 'dotenv/config';

async function getAccessToken(): Promise<string> {
  const response = await fetch('https://api.grammarly.com/ecosystem/api/v1/oauth/token', {
    method: 'POST',
    headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
    body: new URLSearchParams({
      grant_type: 'client_credentials',
      client_id: process.env.GRAMMARLY_CLIENT_ID!,
      client_secret: process.env.GRAMMARLY_CLIENT_SECRET!,
    }),
  });
  const { access_token, expires_in } = await response.json();
  console.log(`Token obtained, expires in ${expires_in}s`);
  return access_token;
}

Step 3: Verify Connection

async function verify(token: string) {
  const response = await fetch('https://api.grammarly.com/ecosystem/api/v2/scores', {
    method: 'POST',
    headers: { 'Authorization': `Bearer ${token}`, 'Content-Type': 'application/json' },
    body: JSON.stringify({ text: 'This is a test sentence for verification.' }),
  });
  if (response.ok) console.log('Grammarly API connection verified');
  else console.error('Verification failed:', response.status);
}

Error Handling

Error Cause Solution
401 Unauthorized Invalid or expired token Re-authenticate
403 Forbidden Missing API scopes Check enterprise admin settings
invalid_client Wrong credentials Verify client ID and secret

Resources

Next Steps

After auth, proceed to grammarly-hello-world.

Info
Category Development
Name grammarly-install-auth
Version v20260423
Size 2.9KB
Updated At 2026-04-26
Language