Complaint by ID
Enter the textual identifier that appears at the end of the public URL.
{
"target": "reclameaqui.com.br",
"type": "idp",
"complaintId": "1rCft1v6-JLpFGtC"
} // docs
Uploads a complete public complaint with report, rating, status, consumer review and all public interactions in chronological order. Cost: 1 credit per request.
reclameaqui.com.br:idp · 1 credit per request
Standard credit cost. Your account pricing is shown in the sandbox.
Try this operation in the sandboxcurl -X POST https://api.geckoapi.com.br/v1/extract \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"target": "reclameaqui.com.br",
"type": "idp",
"complaintId": "1rCft1v6-JLpFGtC"
}' Keep your API key on your server. See the quickstart for authentication and response handling.
The hosted MCP tool fixes target and type for this operation. Its remaining arguments use the same input rules as Extract.
POST /v1/mcp · Bearer or X-API-Key authentication
{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "reclameaqui_com_br_idp",
"arguments": {
"complaintId": "1rCft1v6-JLpFGtC",
"executionId": "exec_example_123"
}
}
} Conditional fields depend on the alternatives and constraints in the rule column. Fields marked unsupported are omitted.
| Field | Type | Requirement | Rule | Default | Example |
|---|---|---|---|---|---|
| url URL extraction target. For some PLPs it can be omitted when API assembles URL from other fields. | string (URL) | Conditional | Send public complaint URL or report complaintId. Do not send both fields. | - | https://www.reclameaqui.com.br/nubank/solicitacao-de-reativacao-de-cartao-de-credito-nubank-apos-regularizacao-de-pendencias_1rCft1v6-JLpFGtC/ |
| complaintId Public identifier of the claim in Reclame AQUI, typically the last segment of URL. | string | Conditional | Textual identifier in the last segment of URL. Mandatory when url is not sent. | - | 1rCft1v6-JLpFGtC |
| target Target source for extraction. | enum | Required | Always required and must be reclameaqui.com.br. | - | reclameaqui.com.br |
| type Extraction type: pdp, idp, plp, ilp, quote, review or places. | enum | Required | Always required and must be idp. | - | idp |
Enter the textual identifier that appears at the end of the public URL.
{
"target": "reclameaqui.com.br",
"type": "idp",
"complaintId": "1rCft1v6-JLpFGtC"
} It is also possible to directly send the complete public URL of the complaint.
{
"target": "reclameaqui.com.br",
"type": "idp",
"url": "https://www.reclameaqui.com.br/nubank/solicitacao-de-reativacao-de-cartao-de-credito-nubank-apos-regularizacao-de-pendencias_1rCft1v6-JLpFGtC/"
} Leaf paths and expected types. Field names and enum values are part of the API contract.
{
"requestId": "string (uuid)",
"executionId": "string (uuid)",
"notFound": "boolean (optional; true when the complaint does not exist and data is null)",
"data.source": "string",
"data.type": "string",
"data.parser": "\"1.0.0\"",
"data.url": "string (URL)",
"data.requestUrl": "string (URL)",
"data.extractedAt": "string (ISO datetime)",
"data.complaint.id": "string",
"data.complaint.legacyId": "integer | null",
"data.complaint.title": "string | null",
"data.complaint.description": "string | null",
"data.complaint.createdAt": "string (ISO datetime) | null",
"data.complaint.statusRaw": "string | null",
"data.complaint.status": "string",
"data.complaint.evaluated": "boolean",
"data.complaint.solved": "boolean",
"data.complaint.score": "number | null",
"data.complaint.wouldDoBusinessAgain": "boolean | null",
"data.complaint.evaluationExpiresAt": "string (ISO datetime) | null",
"data.complaint.daysRemaining": "integer | null",
"data.complaint.additionalInfo": "string | null",
"data.complaint.consumer.id": "string | null",
"data.complaint.consumer.city": "string | null",
"data.complaint.consumer.state": "string | null",
"data.complaint.company.id": "string | null",
"data.complaint.company.name": "string | null",
"data.complaint.company.shortname": "string | null",
"data.complaint.company.profileUrl": "string (URL) | null",
"data.complaint.classification.category.id": "string | null",
"data.complaint.classification.category.name": "string | null",
"data.complaint.classification.productType.id": "string | null",
"data.complaint.classification.productType.name": "string | null",
"data.complaint.classification.problemType.id": "string | null",
"data.complaint.classification.problemType.name": "string | null",
"data.complaint.interactions[].id": "string",
"data.complaint.interactions[].sourceType": "string | null",
"data.complaint.interactions[].type": "string",
"data.complaint.interactions[].authorRole": "string",
"data.complaint.interactions[].message": "string | null",
"data.complaint.interactions[].createdAt": "string (ISO datetime) | null"
} Illustrative response. Product names, reviews and other source content retain their original language. Missing and null values do not imply zero stock, free shipping or zero reviews.
{
"requestId": "req_01K0RACOMPLAINT00000000001",
"executionId": "exe_01K0RACOMPLAINT00000000002",
"data": {
"source": "reclameaqui.com.br",
"type": "idp",
"parser": "1.0.0",
"url": "https://www.reclameaqui.com.br/nubank/nubank-falha-recorrente-na-resolucao-de-problemas-de-inconsistencia-de-dados-no-app-apos-quitacao-de-emprestimo_C3xZYYfUpkimGRKB/",
"requestUrl": "https://www.reclameaqui.com.br/nubank/nubank-falha-recorrente-na-resolucao-de-problemas-de-inconsistencia-de-dados-no-app-apos-quitacao-de-emprestimo_C3xZYYfUpkimGRKB/",
"extractedAt": "2026-07-12T12:33:00.000Z",
"complaint": {
"id": "C3xZYYfUpkimGRKB",
"legacyId": 245964349,
"title": "Nubank: Falha recorrente na resolução de inconsistência de dados no app após quitação de empréstimo",
"description": "Consumidor relata informações incorretas no aplicativo mesmo após a quitação do empréstimo.",
"createdAt": "2026-04-13T21:30:59",
"statusRaw": "ANSWERED",
"status": "SOLVED",
"evaluated": true,
"solved": true,
"score": 10,
"wouldDoBusinessAgain": true,
"evaluationExpiresAt": "2026-07-20T23:59:59.000Z",
"daysRemaining": 8,
"additionalInfo": "Atendimento realizado pelos canais digitais.",
"consumer": {
"id": "consumer_public_id",
"city": "Curitiba",
"state": "PR"
},
"company": {
"id": "88850",
"name": "Nubank",
"shortname": "nubank",
"profileUrl": "https://www.reclameaqui.com.br/empresa/nubank/"
},
"classification": {
"category": {
"id": "0000000000000001",
"name": "Bancos"
},
"productType": {
"id": "0000000000000910",
"name": "Conta"
},
"problemType": {
"id": "0000000000000011",
"name": "Divergência de valores"
}
},
"interactions": [
{
"id": "interaction_company_answer",
"sourceType": "ANSWER",
"type": "ANSWER",
"authorRole": "company",
"message": "A empresa informou que analisou o caso e orientou o consumidor pelos canais oficiais.",
"createdAt": "2026-06-21T10:30:00.000Z"
},
{
"id": "interaction_consumer_reply",
"sourceType": "REPLY",
"type": "REPLY",
"authorRole": "consumer",
"message": "O consumidor confirmou o atendimento e registrou sua avaliação.",
"createdAt": "2026-06-23T16:10:00.000Z"
}
]
}
}
} | Path | Type | Description | Example |
|---|---|---|---|
| data.complaint.additionalInfo | string | null | Additional public information associated with the case. | Atendimento realizado pelos canais digitais. |
| data.complaint.classification.category.id | string | null | ID textual text of the public category associated with the complaint. | 0000000000000001 |
| data.complaint.classification.category.name | string | null | Name of the public category associated with the complaint. | Bancos |
| data.complaint.classification.problemType.id | string | null | ID textual text of the associated problem type. | 0000000000000011 |
| data.complaint.classification.problemType.name | string | null | Name of the associated problem type. | Divergência de valores |
| data.complaint.classification.productType.id | string | null | ID textual text of the associated product or service. | 0000000000000910 |
| data.complaint.classification.productType.name | string | null | Name of the associated product or service. | Conta |
| data.complaint.company.id | string | null | Textual identifier of the complained company. | 88850 |
| data.complaint.company.name | string | null | Public name of the company complained of. | Nubank |
| data.complaint.company.profileUrl | string (URL) | null | URL canonical company profile. | https://www.reclameaqui.com.br/empresa/nubank/ |
| data.complaint.company.shortname | string | null | Company public slug. | nubank |
| data.complaint.consumer.city | string | null | Public city associated with the complaint. | Curitiba |
| data.complaint.consumer.id | string | null | Public identifier of the consumer, without displaying the name. | consumer_public_id |
| data.complaint.consumer.state | string | null | public UF associated with the complaint. | PR |
| data.complaint.createdAt | string (ISO datetime) | null | Complaint publication date. | 2026-04-13T21:30:59 |
| data.complaint.daysRemaining | integer | null | Days remaining for evaluation when applicable. | 8 |
| data.complaint.description | string | null | Complete public consumer report. | Consumidor relata informações incorretas no aplicativo mesmo após a quitação do empréstimo. |
| data.complaint.evaluated | boolean | Indicates whether the service was evaluated by the consumer. | true |
| data.complaint.evaluationExpiresAt | string (ISO datetime) | null | Final deadline for evaluation when informed by the source. | 2026-07-20T23:59:59.000Z |
| data.complaint.id | string | Public textual identifier of the complaint. | C3xZYYfUpkimGRKB |
| data.complaint.interactions[].authorRole | string | Author's standard paper, such as company or consumer. | company |
| data.complaint.interactions[].createdAt | string (ISO datetime) | null | Public date/time of the interaction. | 2026-06-21T10:30:00.000Z |
| data.complaint.interactions[].id | string | Textual identifier of the interaction. | interaction_company_answer |
| data.complaint.interactions[].message | string | null | Full public content of the interaction. | A empresa informou que analisou o caso e orientou o consumidor pelos canais oficiais. |
| data.complaint.interactions[].sourceType | string | null | Raw type of interaction source/author. | ANSWER |
| data.complaint.interactions[].type | string | Type of event, such as response or reply. | ANSWER |
| data.complaint.legacyId | integer | null | Legacy numeric identifier when available. | 245964349 |
| data.complaint.score | number | null | Rating given by the consumer when there is an evaluation. | 10 |
| data.complaint.solved | boolean | Indicates whether the consumer marked the problem as resolved. | true |
| data.complaint.status | string | Status normalized by GeckoAPI. | SOLVED |
| data.complaint.statusRaw | string | null | Raw status returned by the source. | ANSWERED |
| data.complaint.title | string | null | Public title of the complaint. | Nubank: Falha recorrente na resolução de inconsistência de dados no app após quitação de empréstimo |
| data.complaint.wouldDoBusinessAgain | boolean | null | Indicates whether the consumer would do business again. | true |
| data.extractedAt | string (ISO datetime) | Extraction Timestamp UTC. | 2026-07-12T12:33:00.000Z |
| data.parser | "1.0.0" | Stable version of the API response format. | 1.0.0 |
| data.requestUrl | string (URL) | Same value as `data.url`; never exposes the queried internal endpoint. | https://www.reclameaqui.com.br/nubank/nubank-falha-recorrente-na-resolucao-de-problemas-de-inconsistencia-de-dados-no-app-apos-quitacao-de-emprestimo_C3xZYYfUpkimGRKB/ |
| data.source | string | Fixed extraction source. | reclameaqui.com.br |
| data.type | string | Fixed extraction type. | idp |
| data.url | string (URL) | Canonical public URL returned by the source. | https://www.reclameaqui.com.br/nubank/nubank-falha-recorrente-na-resolucao-de-problemas-de-inconsistencia-de-dados-no-app-apos-quitacao-de-emprestimo_C3xZYYfUpkimGRKB/ |
| executionId | string (uuid) | ID internal to the execution processed by the worker. | exe_01K0RACOMPLAINT00000000002 |
| notFound | boolean (optional; true when the complaint does not exist and data is null) | Present and true when the complaint is not found; in this case data is null. | N/A |
| requestId | string (uuid) | ID from request HTTP to GeckoAPI. | req_01K0RACOMPLAINT00000000001 |
When supported by this operation, an entity not found upstream can return HTTP 200 with data: null and notFound: true. Check the documented response fields before interpreting an empty result. Source-specific behavior and exceptions are described above.
| HTTP status | Error code | Meaning |
|---|---|---|
| 400 | INVALID_PAYLOAD | Invalid JSON or a request that violates the documented validation rules. |
| 401 | UNAUTHORIZED | Missing authorization or an invalid API key or token. |
| 402 | INSUFFICIENT_CREDITS | The account has insufficient credits for this operation. |
| 403 | FORBIDDEN | The account does not have access, or the API is temporarily disabled. |
| 409 | EXECUTION_CONFLICT | The execution identifier conflicts with an incompatible execution state. |
| 429 | RATE_LIMIT_EXCEEDED / TOO_MANY_INFLIGHT_REQUESTS | A rate limit or simultaneous request limit was exceeded. |
| 5xx | UPSTREAM_TIMEOUT / UPSTREAM_HTTP_ERROR / WORKER_FUNCTION_ERROR | An upstream, worker or gateway failure. Failed requests follow the platform refund policy. |