Acesse milhares de micro-dados estruturados de Moçambique através da nossa API RESTful. Integração simples, documentação completa e suporte dedicado.
Siga estes passos simples para começar a usar a API Moza Data Farm
Todos os endpoints começam com a seguinte URL base:
A API Moza Data Farm usa autenticação baseada em API Key para proteger os seus dados
Inclua a sua API Key no header de todas as requisições HTTP usando o formato:
const axios = require('axios');
const apiKey = process.env.MOZA_API_KEY;
const response = await axios.get(
'https://api.mozadatafarm.com/v1/prices',
{
headers: {
'Authorization': `Bearer ${apiKey}`,
'Content-Type': 'application/json'
}
}
);
console.log(response.data);
Se a autenticação falhar, receberá uma resposta 401:
{
"error": "Unauthorized",
"message": "Invalid or missing API key"
}
Explore todos os endpoints da API Moza Data Farm
Veja como integrar a API em diferentes linguagens de programação
Usando Axios ou Fetch API
// Usando Axios
const axios = require('axios');
async function getPrices() {
try {
const response = await axios.get(
'https://api.mozadatafarm.com/v1/prices',
{
headers: {
'Authorization': `Bearer ${process.env.API_KEY}`
},
params: {
product: 'Arroz',
location: 'Maputo',
limit: 10
}
}
);
console.log(response.data);
return response.data;
} catch (error) {
console.error('Erro:', error.message);
}
}
getPrices();
Usando Requests library
import requests
import os
API_KEY = os.environ.get('MOZA_API_KEY')
BASE_URL = 'https://api.mozadatafarm.com/v1'
def get_prices(product=None, location=None):
headers = {
'Authorization': f'Bearer {API_KEY}',
'Content-Type': 'application/json'
}
params = {}
if product:
params['product'] = product
if location:
params['location'] = location
response = requests.get(
f'{BASE_URL}/prices',
headers=headers,
params=params
)
return response.json()
# Usar a função
data = get_prices(product='Arroz', location='Maputo')
print(data)
Usando cURL
<?php
$apiKey = getenv('MOZA_API_KEY');
$url = 'https://api.mozadatafarm.com/v1/prices?product=Arroz&location=Maputo';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Bearer " . $apiKey,
"Content-Type: application/json"
]);
$response = curl_exec($ch);
$data = json_decode($response, true);
curl_close($ch);
print_r($data);
?>
Linha de comando
curl -X GET "https://api.mozadatafarm.com/v1/prices?product=Arroz&location=Maputo" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
Entenda os limites de uso e como optimizar as suas requisições
Ative gzip para reduzir o tamanho das respostas
Implemente cache local para dados que mudam raramente
Use parâmetros de query para obter apenas dados necessários
Implemente retry exponencial para erros temporários
Sempre trate erros de forma apropriada no seu código
Configure webhooks para receber atualizações em tempo real
Todas as respostas incluem headers para monitorizar o uso da API:
Entenda os códigos de status HTTP e como lidar com diferentes tipos de erros
| Código | Status | Descrição | Acção |
|---|---|---|---|
| 200 | OK | Requisição bem-sucedida | Processar dados normalmente |
| 400 | Bad Request | Parâmetros inválidos ou em falta | Verificar parâmetros da requisição |
| 401 | Unauthorized | API Key inválida ou em falta | Verificar autenticação |
| 403 | Forbidden | Sem permissão para aceder ao recurso | Verificar permissões da conta |
| 404 | Not Found | Recurso não encontrado | Verificar URL do endpoint |
| 429 | Too Many Requests | Limite de rate excedido | Aguardar antes de nova requisição |
| 500 | Internal Server Error | Erro no servidor | Contactar suporte se persistir |
| 503 | Service Unavailable | Serviço temporariamente indisponível | Tentar novamente em breve |
Todas as respostas de erro seguem este formato JSON:
{
"error": "Bad Request",
"message": "O parâmetro 'product' é obrigatório",
"code": 400,
"timestamp": "2025-12-04T10:30:00Z",
"path": "/v1/prices"
}
Como tratar erros no seu código:
try { const response = await fetch(url, options); if (!response.ok) { const error = await response.json(); throw new Error(error.message); } return await response.json(); } catch (error) { console.error('API Error:', error); }
Crie a sua conta gratuita e comece a explorar dados de Moçambique hoje mesmo. Sem cartão de crédito necessário.
Configuração em 5 minutos
Documentação completa
Suporte 24/7
Confiado por empresas em Moçambique