Listar Companhias Produtoras com filtros (paginado)
Descrição: Retorna uma lista paginada de Companhias Produtoras vinculadas à cooperativa, com suporte a filtros.
Endpoint
POST/api/v1/integration/cooperatives/-/producers:paginated
Regras
| Atributos | Descrição | Tipo | Obrigatório | Validações |
|---|---|---|---|---|
| search_param | Busca genérica por nome ou documento | String | Não | - |
| company_name | Filtro por razão social | String | Não | - |
| status_vinculacao_intermediario | Filtro por status de vínculo com intermediário | List\<String> | Não | - |
| all_status | Quando true, retorna produtores de todos os status de análise | Boolean | Não | - |
| intermediary_id | Filtro por identificador do intermediário | UUID | Não | - |
| producer_ids | Filtro por lista de identificadores de produtores | List\<UUID> | Não | - |
| producer_types | Filtro por tipo de produtor | List\<Enum> | Não | Enumerador: PRODUCER, INTERMEDIARY |
| analisys_status | Filtro por status de análise da cooperativa | List\<Enum> | Não | Enumerador: PENDING_REVIEW, PENDING_APPROVAL, APPROVED, REFUSED |
| states | Filtro por estado(s) brasileiro(s) | List\<Enum> | Não | Enumerador: siglas dos 27 estados (ex: SP, MG, RS) |
| cities | Filtro por cidade(s) | List\<String> | Não | - |
| wallets_ids_list | Filtro por lista de identificadores de carteiras | List\<String> | Não | - |
| updated_after | Retorna apenas registros atualizados após esta data/hora | DateTime | Não | Formato ISO 8601 (ex: 2024-01-15T00:00:00) |
Exemplo de Requisição
Exemplo de Requisição
curl -X POST\
-H "Authorization: [[apiKey]]"\
-H "cooperative-id: [[cooperativeId]]"\
-H "Accept: application/json"\
-H "Content-Type: application/json;charset=UTF-8"\
"https://homolog.api.merx.tech/api/v1/integration/cooperatives/-/producers:paginated?page=0&size=30&sort=company_name,asc"
Parâmetros
Parâmetros de Cabeçalho
| Nome | Descrição | Tipo | Obrigatório |
|---|---|---|---|
| Authorization | String | Não | |
| cooperative-id | Identificador UUID da cooperativa | UUID | Sim |
Parâmetros de Consulta (Query)
| Nome | Descrição | Tipo | Obrigatório | Padrão |
|---|---|---|---|---|
| page | Número da página (0-indexado) | Integer | Não | 0 |
| size | Quantidade de registros por página | Integer | Não | 30 |
| sort | Campo e direção de ordenação (ex: company_name,asc) | String | Não | company_name,asc |
Parâmetros do Corpo
| Nome | Descrição | Tipo | Obrigatório |
|---|---|---|---|
| search_param | Busca genérica por nome ou documento | String | Não |
| company_name | Filtro por razão social | String | Não |
| status_vinculacao_intermediario | Filtro por status de vínculo com intermediário | List\<String> | Não |
| all_status | Retorna produtores de todos os status de análise | Boolean | Não |
| intermediary_id | Identificador do intermediário | UUID | Não |
| producer_ids | Lista de identificadores de produtores | List\<UUID> | Não |
| producer_types | Filtro por tipo de produtor | List\<Enum> | Não |
| analisys_status | Filtro por status de análise | List\<Enum> | Não |
| states | Filtro por estados brasileiros | List\<Enum> | Não |
| cities | Filtro por cidades | List\<String> | Não |
| wallets_ids_list | Lista de identificadores de carteiras | List\<String> | Não |
| updated_after | Data/hora mínima de atualização | DateTime | Não |
Respostas
- 200 - Ok
{
"content": [
{
"id": "string (uuid)",
"originator_id": "string (uuid)",
"trading_name": "string",
"company_name": "string",
"status": "string",
"analysis_status": "string",
"city": "string",
"state": "string",
"city_code": "string",
"state_code": "string",
"type": "string",
"email": "string",
"created_at": "string (date-time)",
"updated_at": "string (date-time)",
"identifier": "string",
"document_type": "string",
"producer_type": "string",
"esg_status": "string",
"anonymized": true,
"count_wallets": 0,
"count_farms": 0,
"enabled": true,
"removed": false
}
],
"pageable": {
"sort": {
"sorted": true,
"unsorted": false,
"empty": false
},
"page_number": 0,
"page_size": 30,
"offset": 0,
"paged": true,
"unpaged": false
},
"total_pages": 1,
"total_elements": 1,
"last": true,
"first": true,
"sort": {
"sorted": true,
"unsorted": false,
"empty": false
},
"number_of_elements": 1,
"size": 30,
"number": 0,
"empty": false
}
- 400 - Bad Request
{
"timestamp": "string (date-time)",
"status": "integer (int32)",
"error": "string"
}
401 - Unauthorized
404 - NotFound