crowdin / crowdin/crowdin-api-client-go
Add support for Application Consents API
- Dominant language
- Go
- Stars
- 10
- Forks
- 18
- Avg merge
- 1h 11m
- Merged PRs (30d)
- 1
Description
The Crowdin API introduces **Application Consent Decisions** methods for managing consents granted or denied to applications. Note: these endpoints are available on **crowdin.com only** (not in Crowdin Enterprise).
- **List Application Consents** — `GET /applications/consents` (`api.applications.consents.getMany`). Query: `identifier` (string, optional), `orderBy` (`id`, `createdAt`), `limit`/`offset`.
- **Add Application Consent** — `POST /applications/consents` (`api.applications.consents.post`). Request: `identifier` (string, required), `installedBy` (integer, required), `status` (`granted` or `denied`, required), `scopes` (array of strings, optional). Returns `409` on duplicate.
- **Edit Application Consent** — `PATCH /applications/consents/{consentId}` (`api.applications.consents.patch`). JSON Patch with `op: replace` and paths `/status`, `/scopes`.
- **Delete Application Consent** — `DELETE /applications/consents/{consentId}` (`api.applications.consents.delete`).
The response model includes: `id`, `installedBy` (nullable object with `id`, `username`, `fullName`, `avatarUrl`), `identifier`, `name` (nullable), `status`, `scopes`, `createdAt`, `updatedAt`.
Client libraries should add these methods to their Applications API support.
**References:**
- [List Application Consents](https://support.crowdin.com/developer/api/v2/#operation/api.applications.consents.getMany)
- [Add Application Consent](https://support.crowdin.com/developer/api/v2/#operation/api.applications.consents.post)
- [Edit Application Consent](https://support.crowdin.com/developer/api/v2/#operation/api.applications.consents.patch)
- [Delete Application Consent](https://support.crowdin.com/developer/api/v2/#operation/api.applications.consents.delete)
Contributor guide
Research direction
Start by locating the Applications API support and its existing method and response-model patterns. Add support for the four Application Consents operations and their documented request and response fields, restricted to crowdin.com, then verify the client exposes the listed getMany, post, patch, and delete methods.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- api
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 70/100