Encurtar Plus Code
Perto do ponto de referência 47.5, 8.5, o Plus Code completo 8FVC9G8F+6X encurta para 9G8F+6X: os quatro primeiros caracteres saem, porque a área próxima já os fornece. Só são removidos os que podem ser recuperados com segurança. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Código
- 8FVC9G8F+6X
- Latitude
- 47,5
- Longitude
- 8,5
- Código curto
- 9G8F+6X
- Código completo
- 8FVC9G8F+6X
- Caracteres removidos
- 4
- Comprimento do código
- 10
Um código completo como eight F V C nine G eight F plus six X é único à escala global, mas a partilha do dia a dia ocorre quase sempre dentro de uma cidade ou bairro conhecidos, onde os pares iniciais se repetem e só o bloco final identifica o ponto.
Como funciona o encurtamento do Plus Code em relação a um local de referência
Um Open Location Code completo codifica uma célula retangular na Terra com o alfabeto de vinte caracteres do dois ao nove e C F G H J M P Q R V W X, com um separador mais obrigatório após oito caracteres. Quando você partilha uma localização dentro de uma área conhecida, os primeiros quatro ou seis caracteres costumam coincidir em todos os lugares próximos, de modo que acrescentam ruído em vez de valor.
Sempre que o alcance for inferior a trinta por cento da resolução de um par, o algoritmo pode remover os pares iniciais correspondentes. Esse fator de trinta por cento é uma margem de segurança deliberada para que o código curto continue a ser a coincidência mais próxima quando alguém o recuperar mais tarde a partir de um centro de cidade ou de uma leitura GPS ligeiramente diferentes. Se a referência estiver longe, nenhum par é removido e o código completo é devolvido inalterado.
Códigos com preenchimento que só descrevem uma área grande (com zeros antes do separador) não podem ser encurtados, porque carecem de dígitos de precisão suficientes para um corte seguro. A capacidade implementa apenas este caminho aritmético puro: não pesquisa nomes de lugares, não chama APIs de mapas nem inventa rótulos de localidade que você deva acrescentar por conta própria.
Onde um encurtador de Plus Code justifica o seu lugar
Aplicações de entrega, serviço de campo e logística já guardam Open Location Codes completos para portas sem número de rua; quando imprimem uma etiqueta ou enviam um SMS dentro de uma cidade conhecida precisam da forma curta que os condutores já reconhecem no Google Maps e no plus.codes.
Fluxos de resposta a desastres e cartografia humanitária partilham abrigos temporários e pontos de água como códigos curtos mais o nome de um acampamento ou distrito, e um encurtador determinístico garante que cada cliente —pacote móvel offline, edge worker ou importação de folha de cálculo— concorde no mesmo corte para a mesma referência. Programadores que integram OLC em formulários podem validar e encurtar numa só chamada sem enviar uma biblioteca open-location-code completa a cada cliente. A validação falhada não consome saldo.
Casos de uso
Partilha por SMS e etiquetas numa cidade conhecida
Transforme um Plus Code completo armazenado num código curto junto ao nome de uma cidade ou bairro para que condutores e clientes vejam a forma compacta que já usam nas apps de mapas.
Pacotes de cartografia offline e humanitária
Gere os mesmos códigos curtos offline para abrigos e pontos de abastecimento com um lat/lon de referência do acampamento, para que cada dispositivo recupere depois o mesmo código completo mais próximo.
Perguntas frequentes
Posso encurtar um código curto ou um código de área com preenchimento?
Não. A entrada deve ser um código completo válido sem zeros de preenchimento.
Como encurto um Plus Code usando um ponto de referência?
Informe o Plus Code completo e um ponto próximo de onde as pessoas vão recuperá-lo, como o centro da cidade. A ferramenta compara esse ponto com o centro da célula e remove os pares iniciais que podem ser deduzidos com segurança.
A que distância o ponto de referência deve estar?
Perto do centro da célula do código. Os pares iniciais só saem enquanto a separação, medida pela maior das diferenças em graus entre os dois pontos, fica abaixo de trinta por cento do tamanho de célula desse par.
Por que o meu Plus Code voltou sem encurtar?
Porque o ponto de referência está longe demais do local do código para remover algo com segurança. Nesse caso o código completo volta sem mudança, e o resultado informa que nenhum caractere foi removido.
Quais caracteres um Plus Code pode ter?
Um alfabeto de vinte caracteres: os algarismos de 2 a 9 e as letras C, F, G, H, J, M, P, Q, R, V, W e X. O sinal de mais aparece depois dos oito primeiros caracteres de um código completo.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/geo/plus-code-shorten \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"code":"8FVC9G8F+6X","latitude":47.5,"longitude":8.5}'const res = await fetch("https://api.kit.forhosting.com/geo/plus-code-shorten", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"code": "8FVC9G8F+6X",
"latitude": 47.5,
"longitude": 8.5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geo/plus-code-shorten",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"code": "8FVC9G8F+6X",
"latitude": 47.5,
"longitude": 8.5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geo/plus-code-shorten", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"code":"8FVC9G8F+6X","latitude":47.5,"longitude":8.5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"code":"8FVC9G8F+6X","latitude":47.5,"longitude":8.5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geo/plus-code-shorten", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"code": "8FVC9G8F+6X",
"latitude": 47.5,
"longitude": 8.5
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geo.plus_code_shorten",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Os Open Location Codes, mais conhecidos como Plus Codes, transformam latitude e longitude em cadeias curtas que se podem dizer, digitar e imprimir sem números de porta. Este encurtador de Plus Code aceita um código completo válido mais uma latitude e longitude de referência próximas, mede o quão perto a referência está do centro da célula e remove tantos pares de caracteres iniciais quanto a regra de segurança do Open Location Code permitir. O resultado é um código curto compacto pronto para combinar com um nome de local, enquanto a API também indica se houve encurtamento, quantos caracteres foram removidos e o alcance angular usado. Códigos completos inválidos, códigos de área com preenchimento e coordenadas em falta falham com erros invalid_input claros em vez de inventar um fragmento ambíguo.
Como funciona o encurtamento do Plus Code em relação a um local de referência
Os dez primeiros dígitos significativos formam pares de latitude e longitude que refinam a célula por fatores sucessivos de vinte; dígitos de grelha opcionais após o separador refinam ainda mais. O encurtamento não se limita a cortar um prefixo fixo: descodifica o código completo até ao centro da célula, compara esse centro com a latitude e longitude de referência mediante uma métrica de Chebyshev (o máximo da diferença absoluta de latitude e de longitude em graus) e percorre uma tabela fixa de resoluções de vinte, um, zero vírgula zero cinco, zero vírgula zero zero dois cinco e zero vírgula zero zero zero um dois cinco graus.
Contrato de entrada, forma da resposta e comportamento de erro
Códigos com preenchimento zero antes do separador são rejeitados com a mensagem de que não se podem encurtar. Campos em falta, cadeias vazias e números não finitos falham com mensagens que nomeiam o campo e não são cobrados. Associe o código curto a uma cadeia de localidade na sua própria interface; este extremo nunca emite nomes de cidade. Envie por POST um corpo JSON com três campos obrigatórios: code, uma cadeia com o Open Location Code completo como eight F V C nine G eight F plus six X; latitude, uma latitude de referência finita em graus decimais com sinal; e longitude, uma longitude de referência finita em graus decimais com sinal. Aceitam-se aliases por conveniência: plus_code, olc, full_code ou location_code para o código; lat, ref_latitude ou reference_latitude para a latitude; lon, lng, ref_longitude ou reference_longitude para a longitude. O código é aparado e passado a maiúsculas; códigos curtos (separador antes da posição oito) e cadeias que falham nas regras de validade do Open Location Code são rejeitados com invalid_input indicando o campo. A latitude é limitada ao intervalo fechado de menos noventa a noventa; a longitude é normalizada no intervalo semiaberto de menos cento e oitenta a cento e oitenta. Em caso de sucesso o corpo devolve o código completo normalizado e as coordenadas limpas, short_code (que pode igualar o código completo quando não há corte seguro), was_shortened como booleano, characters_removed como inteiro não negativo, code_length como a contagem de dígitos significativos da entrada, short_length como a da forma curta, range_degrees como o alcance de Chebyshev arredondado para goldens estáveis, e method igual a olc_shorten. Exemplo: o código eight F V C nine G eight F plus six X com latitude de referência quarenta e sete ponto cinco e longitude oito ponto cinco produz o código curto nine G eight F plus six X após remover os quatro primeiros caracteres.
Onde um encurtador de Plus Code justifica o seu lugar
Como a implementação é parse puro de nível A, cada chamada bem-sucedida custa o preço base publicado US$ 0,002 sem tokens de modelo nem rede de saída. Mantenha os pedidos pequenos, fixe short_code e characters_removed nos testes, e obterá Plus Codes curtos reproduzíveis para etiquetas, bots de chat e edge workers sem montar infraestrutura de geocodificação própria.
Casos de integração
Serviço de campo e entrega de última milha
Encurte códigos OLC ao nível da porta em relação ao centróide de um depósito ou zona antes de imprimir ordens de trabalho, sem chamar uma API externa de mapas.
Perguntas técnicas
Como encurto um Plus Code com um local de referência?
Envie um Open Location Code completo em code mais latitude e longitude de referência finitas. A API devolve short_code após remover tantos pares iniciais quanto a regra de segurança OLC permitir para essa distância.
E se a referência estiver longe do código?
Nenhum par inicial é removido. short_code iguala o código completo, was_shortened é false e characters_removed é zero, para que você nunca envie um fragmento ambíguo.
A API acrescenta um nome de cidade após o código curto?
Não. Apenas corta caracteres OLC iniciais. Acrescente você o próprio rótulo de localidade (cidade, distrito ou acampamento) ao mostrar ou enviar o código curto.
Quanto custa o encurtador de Plus Code?
A ferramenta no navegador é gratuita. Pedidos API usam saldo pré-pago KIT a US$ 0,002 por chamada bem-sucedida; entrada inválida não é cobrada.