crowdin / crowdin/crowdin-api-client-go

Add support for Application Consents API

Open
#152 0 comments 0 reactions 0 assignees View on GitHub
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.