API SIOP - Orçamento Impositivo

1. Documentação dos Schemas da API

A documentação pode ser encontrada em formato online usando o Explorador de API's do SIOP.

<div id="app"></div>
<code>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.0.2/react.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.0.2/react-dom.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/fetch/1.0.0/fetch.min.js"></script>
<script src="https://github.com/mhallin/graphql-docs/releases/download/v0.2.0/graphql-docs.min.js"></script>
<script>
</code>
<code>
function fetcher(query) {
return fetch('https://siop.planejamento.gov.br/siop/api', {
method: 'POST',
headers: {
Accept: 'application/json',
'Content-Type': 'application/json',
Authorization: 'Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxMTkyMiIsImF1ZCI6InNpb3AiLCJhdGl2byI6dHJ1ZSwicXVhbnRpZGFkZVRlbnRhdGl2YXMiOjAsImlzcyI6InNpb3AiLCJjcGYiOiI2NDEuNjE0Ljk4MS04NyIsInRyb2NhclNlbmhhIjpmYWxzZSwidXN1YXJpbyI6MTE5MjIsIm5vbWUiOiJFdmVydG9uIEJhdGlzdGEgUmFtb3MiLCJleHAiOjE1NDA1Nzk3MTR9.E9ac6OcPpDKZQPTZKzIMCcqybGffftj8nBIiv-MUwCBVWrTyQ6ICL1gGO7F5WdH-yyqHNu0Abqhge8Iu-8-n8w'
},
body: JSON.stringify({
query: query,
}),
}).then(function(r) {
return r.json();
});
}
</code>
<code>
const rootElem = document.getElementById('app');
ReactDOM.render(
React.createElement(
GraphQLDocs.GraphQLDocs,
{
fetcher: fetcher,
}),
rootElem
);
</code>
<code>
</script>
</code>

2. Exemplo de Requisição HTTP

Para obter as emendas deve-se enviar uma requisição à API SIOP do Impositivo informando o exercício, o autor e os dados desejados:

curl -k -X POST -H 'Authorization: Bearer <token>' -H 'Content-Type:application/json'
'https://www.siop.planejamento.gov.br/modulo/impositivo/itens/api'
-d '{"query": "{itens(filtro:{exercicio:<exercicio>,autor:<autor>})
{ classificacao { programacao, emenda, exercicio, autor, dotacao},
valor { dotacao }, detalhamento { classificacao { beneficiario },
valor { beneficiario, empenhado, impedimento }, metadados { prioridade } } } }"}'

O formato dos campos 'programacao' e 'dotacao' é '99.99999.99.999.9999.AAAA.9999' e '9999.9.999.9999.9', respectivamente, onde cada grupo de caracteres significa:

programação: esfera, uo, função, subfunção, programa, ação, localizador

dotação: idoc, iduso, fonte, natureza de despesa, resultado primário