Grammarly
Ploy connects to Grammarly through Grammarly's License Management API. It shows you everyone who holds a Grammarly seat in your institution, including invitations that have not been accepted yet, and lets you remove people to free their seat.
This integration is in beta
The Grammarly integration is in beta. It was built from Grammarly's published API documentation and has not yet been run against a live Grammarly institution, so some behaviour may differ from what is described here until it has.
The first step of setup is a consent checkbox. Ticking it lets Ploy record the error responses Grammarly sends back while the integration is in beta, after removing personal and secret values from them, so we can find and fix problems quickly. Ploy never records successful responses this way. You must tick it to continue.
What you need
A Grammarly Enterprise or Grammarly for Education plan with an institution-wide licence. The API is not available on individual or Pro plans.
An admin of your Grammarly institution to create the credential.
Step 1: Create an OAuth credential in Grammarly
Sign in to Grammarly as an institution admin and open the Admin panel.
Go to the Organization tab and open OAuth 2.0 credentials.
Add a new credential and give it a name you will recognise, for example Ploy.
Tick the License Management API, with both read and write access. Read access lets Ploy see your members and invitations; write access lets Ploy remove them. Ploy does not need the Analytics or Writing Score APIs.
Save the credential and copy the Client ID and Client Secret. Keep the secret somewhere safe until you have pasted it into Ploy.
Step 2: Connect Grammarly in Ploy
In Ploy, open Integrations and choose Grammarly.
Tick the beta consent checkbox.
Paste the Client ID and Client Secret.
Select Test. Ploy reads your institution's summary to check the credential works, then saves the connection.
Each credential belongs to one Grammarly institution. To connect a second institution, create a credential in that institution's Admin panel and add Grammarly to Ploy again.
What Ploy shows
Members: everyone who has joined your Grammarly institution, with their email, name and when they last used Grammarly. Someone who has never used Grammarly shows the date they joined.
Admin or Member: each person's role in the institution, shown as their access level.
Pending invitations: people who have been invited but have not joined yet, shown as pending. Expired invitations are shown too, because Grammarly still counts them against your seats until they are removed.
Your institution: shown as a resource, named as it is in Grammarly.
Ploy rescans every six hours. Someone removed in Grammarly disappears from Ploy's active access after the next scan; on a brand new connection this happens from the second scan onwards.
What Ploy can do
Remove a user: removes a member from your institution, or withdraws a pending invitation, and frees the seat. Grammarly does not allow admins to be removed through its API, so Ploy refuses to remove an admin; remove them in the Grammarly Admin panel instead.
Grammarly's API cannot invite people, change who is an admin, or suspend someone, so Ploy cannot do those either.
Troubleshooting
"Grammarly rejected that client ID and secret": check both values were copied in full, and that the credential still exists in the Admin panel.
"Grammarly accepted the credential but refused to read your institution": edit the credential and make sure the License Management API is ticked.
Removing someone fails with a permissions message: the credential needs write access to the License Management API, or the person is an admin.