Serviços de API
Como obter ou importar dados do OpenDataBio?
Cada instalação do OpenDataBio fornece um serviço de API, permitindo aos usuários OBTER, INSERIR, ATUALIZAR dados programaticamente. O serviço é de acesso aberto a dados públicos, e requer autenticação do usuário para INSERIR e ATUALIZAR dados, ou para OBTER dados de acesso restrito.
O OpenDataBio Application Programming Interface -API permite que os usuários interajam com um banco de dados OpenDataBio para exportar, importar e atualizar dados sem usar a interface web.
O pacote OpenDataBio R é um cliente para esta API, permitindo a interação com o repositório de dados diretamente do R.
A API OpenDataBio permite a consulta ao banco de dados e a importação/edição de dados por meio de uma interface inspirada em REST. Todas as solicitações e respostas da API são formatadas em JSON.
Uma simples chamada para a API OpenDataBio possui quatro partes independentes:
[verbo HTTP] + URL base + endpoint + parâmetros de solicitação
- HTTP-verbo -
GET
para exportações, POST
para importações e PUT
para atualizações.
- URL-base - o URL usado para acessar seu servidor OpenDataBio + mais
/ api / v0
. Por exemplo, http:// opendatabio.inpa.gov.br/api/v0
- endpoint - representa o objeto ou coleção de objetos que você deseja acessar, por exemplo, para consultar nomes taxonômicos, o endpoint é “taxons”
- parâmetros de solicitação - representam a filtragem e o processamento que devem ser feitos com os objetos e são representados na chamada da API após um ponto de interrogação. Por exemplo, para recuperar apenas nomes taxonômicos válidos finalize a solicitação com
?valid = 1
.
A chamada API acima pode ser inserida em um navegador para OBTER dados de acesso público. Por exemplo, para obter a lista de táxons válidos de uma instalação do OpenDataBio, a solicitação da API poderia ser:
https://opendb.inpa.gov.br/api/v0/taxons?valid=1&limit=10
Quando usar o OpenDataBio R package essa mesma chamada seria algo como odb_get_taxons(list(valid=1,limit=10))
.
A resposta será algo como:
{
"meta":
{
"odb_version":"0.9.1-alpha1",
"api_version":"v0",
"server":"http://opendb.inpa.gov.br",
"full_url":"https://opendb.inpa.gov.br/api/v0/taxons?valid=1&limit1&offset=100"},
"data":
[
{
"id":62,
"parent_id":25,
"author_id":null,
"scientificName":"Laurales",
"taxonRank":"Ordem",
"scientificNameAuthorship":null,
"namePublishedIn":"Juss. ex Bercht. & J. Presl. In: Prir. Rostlin: 235. (1820).",
"parentName":"Magnoliidae",
"family":null,
"taxonRemarks":null,
"taxonomicStatus":"accepted",
"ScientificNameID":"http:\/\/tropicos.org\/Name\/43000015 | https:\/\/www.gbif.org\/species\/407",
"basisOfRecord":"Taxon"
}]}
Autenticação da API
- Não é obrigatória para obter quaisquer dados de acesso público numa base de dados ODB, que por padrão inclui Localidades, Taxons, Referências Bibliográficas, Pessoas e Variáveis.
- Autenticação é necessária para OBTER quaisquer dados que não sejam de acesso público e para INSERIR e ATUALIZAR dados.
- A autenticação é feita usando um
token API
, que pode ser encontrado no seu perfil de usuário na interface do aplicativo. O token é atribuído a um único usuário do banco de dados e não deve ser compartilhado, exposto, enviado por e-mail ou armazenado em controles de versão.
- Para autenticar na API OpenDataBio, use o token no cabeçalho “Authorization” da solicitação da API. Ao usar o cliente R, passe o token para a função
odb_config`` cfg = odb_config (token = "seu-token-aqui")
.
Os usuários somente terão acesso aos dados para os quais o usuário tem permissão e para quaisquer dados com acesso público na base de dados. O acesso à Medições, Indivíduos, Vouchers e Mídia depende das permissões compreendidas pelo token do usuário.
Versões da API
A API OpenDataBio segue seu próprio número de versão. Isso significa que o cliente pode esperar usar o mesmo código e obter as mesmas respostas, independentemente da versão do OpenDataBio que o servidor está executando. Todas as alterações feitas na mesma versão da API devem ser compatíveis com versões anteriores. Nosso controle de versão da API é controlado pelo URL, portanto, para solicitar uma versão específica da API, use o número da versão entre o URL base e o endpoint:
http://opendatabio.inpa.gov.br/opendatabio/api/v1/taxons
http://opendatabio.inpa.gov.br/opendatabio/api/v2/taxons
Version v0
A versão 0 da API (v0) é uma versão instável. A primeira versão estável será a versão 1 da API.
1 - Referência rápida
Lista dos EndPoints e dos Parâmetros para GET e POST!
Formato da API
base-URL + ‘/api/v0/’ + endpoint + ‘?’ + request-parameters
OBTER DADOS - GET
Parâmetros GET compartilhados
Quando múltiplos parâmetros são especificados eles são combinados com o operador AND. Não há opção de parâmetro OR nas suas buscas.
Todos os endpoints compartilham estes parâmetros GET:
id
retorna apenas o recurso especificado. Pode ser um número ou uma lista delimitada por vírgulas, como api/v0/locations? Id = 1,50,124
limit
: limita o número de itens que devem ser retornados (deve ser maior que 0). Exemplo: api/v0/taxons?limit=10
offset
: o registro inicial a partir do qual deseja extrair, para ser usado com limite ao tentar baixar uma grande quantidade de dados. Exemplo: api/v0/taxons?offset=1000&limit=10
retorna 10 registros começando da posição 1K da consulta realizada.
fields
: o campo ou campos que devem ser retornados. Cada EndPoint possui seus próprios campos, mas há duas palavras especiais, simple (padrão) e all, que retornam diferentes coleções de campos. fields = all
pode retornar sub-objetos para cada objeto. fields ='raw'
irá retornar a tabela bruta, e isso torna a busca muito mais rápida, embora será mais difícil interpretar alguns valores. Exemplo: api/v0/taxons?fields='id,scientificName,valid'
save_job
: usando save_job=1
na lista de parâmetros, será gerado um job com a sua busca e os dados poderão ser baixados após a finalização do job através da API userjobs api.
Baixar muitos dados?
Os parâmetros
limit
e
offset
podem ser usados para dividir sua busca em partes. Alternativamente, use a opção
save_job=T
e depois baixe os dados com o parametro
get_file=T
da
API userjobs.
wildcards
Alguns parâmetros aceitam um asterisco como curinga, então api/v0/taxons?name=Euterpe
retornará táxons com nome exatamente como “Euterpe”, enquanto api/v0/taxons?name=Eut*
retornará nomes começando com “Eut”.
Parâmetros GET específicos
Endpoint |
Descrição |
Parâmetros possíveis |
/ |
Testa o acesso |
nenhum |
bibreferences |
Obter referências bibliográficas |
id , bibkey |
biocollections |
Lista de BioColeções registradas |
id |
datasets |
Lista Conjuntos de Dados ou Baixa os arquivos de versões de conjuntos de dados |
id , list_versions , file_name |
individuals |
Obter dados de Indivíduos (organisms) |
id , location , location_root ,taxon , taxon_root , tag ,project , dataset |
individual-locations |
Obter localizações (ocorrências) de indivíduos |
individual_id , location , location_root ,taxon , taxon_root , dataset |
languages |
Lista de Idiomas |
|
measurements |
Obter Medições |
id , taxon ,dataset ,trait ,individual ,voucher ,location |
locations |
Obter localidades |
root , id , parent_id ,adm_level , name , limit , querytype , lat , long ,project ,dataset |
persons |
Lista de Pessoas |
id , search , name , abbrev , email |
projects |
Lista de projects |
id |
taxons |
Lista de Taxons |
root , id , name ,level , valid , external , project ,dataset |
traits |
Lista Variáveis (traits) |
id , name |
vouchers |
Lista Vouchers |
id , number , individual , location , collector , location_root ,taxon , taxon_root ,project , dataset |
userjobs |
Lista Jobs de Usuário |
id , status |
Importar dados - POST
Atenção
- A importação de dados de arquivos por meio da interface da web requer a especificação dos parâmetros do verbo POST da API listados abaixo
- As importações em lote de Referências bibliográficas e Arquivos de Mídia só são possíveis por meio da interface no navegador.
Endpoint |
Descrição |
Parâmetros POST |
biocollections |
Importar BioColeções |
name , acronym |
individuals |
Importar indivíduos |
collector , tag , dataset , date , (location or latitude + longitude )**, altitude , location_notes , location_date_time , x , y , distance , angle , notes , taxon , identifier , identification_date , modifier , identification_notes , identification_based_on_biocollection , identification_based_on_biocollection_id , identification_individual |
individual-locations |
Importar Localidades de Indivíduos |
individual , (location or latitude + longitude ), altitude , location_notes , location_date_time , x , y , distance , angle |
locations |
Importar Localidades |
name , adm_level , (geom or lat +long )** , parent , altitude , datum , x , y , startx , starty , notes , ismarine |
measurements |
Importar Medições |
dataset , date , object_type , object_type , person , trait_id , value **, link_id , bibreference , notes , duplicated ,location , parent_measurement |
persons |
Importar Pessoas |
full_name **, abbreviation , email , institution , biocollection |
traits |
Importar Variáveis |
export_name , type , objects , name , description **, units , range_min , range_max , categories , wavenumber_min and wavenumber_max , value_length , link_type , bibreference , tags |
taxons |
Importar Taxons |
name **, level , parent , bibreference , author , author_id or person , valid , mobot , ipni , mycobank , zoobank , gbif |
vouchers |
Importar Vouchers |
individual , biocollection , biocollection_type , biocollection_number , number , collector , date , dataset , notes |
** indica campos obrigatórios.
Atualizar dados - PUT
Atenção
Somente os endpoints listados abaixo podem ser atualizados usando a API e somente os campos PUT listados podem ser atualizados em cada endpoint. Os valores dos campos são os mesmos como explicados para a API POST, exceto que em todos os casos o id
do registro a ser atualizado também deve ser fornecido.
Endpoint |
Description |
PUT Fields |
individuals |
Atualizar Indivíduos |
(id or individual_id ),collector , tag , dataset , date , notes , taxon , identifier , identification_date , modifier , identification_notes , identification_based_on_biocollection , identification_based_on_biocollection_id , identification_individual |
individual-locations |
Atualizar Localidades de Indivíduos |
(id or individual_location_id ), individual , (location or latitude + longitude ), altitude , location_notes , location_date_time , x , y , distance , angle |
locations |
Atualizar Localidades |
(id or location_id ), name , adm_level , (geom or lat +long ) , parent , altitude , datum , x , y , startx , starty , notes , ismarine |
measurements |
Atualizar Medições |
(id or measurement_id ), dataset , date , object_type , object_type , person , trait_id , value , link_id , bibreference , notes , duplicated ,location , parent_measurement |
persons |
Atualizar Pessoas |
(id or person_id ),full_name , abbreviation , email , institution , biocollection |
vouchers |
Atualizar Vouchers |
(id or voucher_id ),individual , biocollection , biocollection_type , biocollection_number , number , collector , date , dataset , notes |
Nomenclature Types
Tipo Nomenclatural : código numérico |
|
NotType : 0 |
Isosyntype : 8 |
Type : 1 |
Neotype : 9 |
Holotype : 2 |
Epitype : 10 |
Isotype : 3 |
Isoepitype : 11 |
Paratype : 4 |
Cultivartype : 12 |
Lectotype : 5 |
Clonotype : 13 |
Isolectotype : 6 |
Topotype : 14 |
Syntype : 7 |
Phototype : 15 |
Níveis taxonômicos (Ranks)
Nível |
Nível |
Nível |
Nível |
-100 clade |
60 cl., class |
120 fam., family |
210 section, sp., spec., species |
0 kingdom |
70 subcl., subclass |
130 subfam., subfamily |
220 subsp., subspecies |
10 subkingd. |
80 superord., superorder |
150 tr., tribe |
240 var., variety |
30 div., phyl., phylum, division |
90 ord., order |
180 gen., genus |
270 f., fo., form |
40 subdiv. |
100 subord. |
190 subg., subgenus, sect. |
|
2 - Obter dados - GET
Como obter dados usando a GET API!
- O pacote OpenDataBio-R é um cliente para esta API.
- Não é necessária autenticação para acessar dados com uma política de acesso público
- Token de autenticação necessário apenas para obter dados com uma política de acesso não pública
Parâmetros GET compartilhados
Quando múltiplos parâmetros são especificados eles são combinados com o operador AND. Não há opção de parâmetro OR nas suas buscas.
Os endpoints compartilham estes parâmetros GET:
id
retorna apenas o recurso especificado. Pode ser um número ou uma lista delimitada por vírgulas, como api/v0/locations? Id = 1,50,124
limit
: limita o número de itens que devem ser retornados (deve ser maior que 0). Exemplo: api/v0/taxons?limit=10
offset
: o registro inicial a partir do qual deseja extrair, para ser usado com limite ao tentar baixar uma grande quantidade de dados. Exemplo: api/v0/taxons?offset=1000&limit=10
retorna 10 registros começando da posição 1K da consulta realizada.
fields
: o campo ou campos que devem ser retornados. Cada EndPoint possui seus próprios campos, mas há duas palavras especiais, simple (padrão) e all, que retornam diferentes coleções de campos. fields = all
pode retornar sub-objetos para cada objeto. fields ='raw'
irá retornar a tabela bruta, e isso torna a busca muito mais rápida, embora será mais difícil interpretar alguns valores. Exemplo: api/v0/taxons?fields='id,scientificName,valid'
save_job
: usando save_job=1
na lista de parâmetros, será gerado um job com a sua busca e os dados poderão ser baixados após a finalização do job através da API userjobs api.
Baixar muitos dados?
Os parâmetros
limit
e
offset
podem ser usados para dividir sua busca em partes. Alternativamente, use a opção
save_job=T
e depois baixe os dados com o parametro
get_file=T
da
API userjobs.
wildcards
Alguns parâmetros aceitam um asterisco como curinga, então api/v0/taxons?name=Euterpe
retornará táxons com nome exatamente como “Euterpe”, enquanto api/v0/taxons?name=Eut*
retornará nomes começando com “Eut”.
BibReferences Endpoint
O endpoint bibreferences
interage com a tabela [bibreferences](/docs/concepts/auxiliary-objects/# bibreferences). Seu uso básico é obter as referências bibliográficas registradas.
Parâmetros GET
id = list
retorna apenas referências com o id ou ids fornecidos (ex id = 1,2,3,10
)
bibkey = list
retorna apenas referências com bibkey ou bibkeys (ex bibkey = ducke1953, mayr1992
)
taxon = lista de ids
retorna apenas referências vinculadas ao táxon informado.
limit
e offset
. consulte Parâmetros comuns.
Campos de resposta
id
- o id de BibReference na tabela bibreferences (um id de banco de dados local)
bibkey
- a bibkey usada para pesquisar e usar a referência no sistema web
year
- o ano de publicação
author
- os autores da publicação
title
- o título da publicação
doi
- a publicação DOI, se presente
url
- um url externo para a publicação, se presente
bibtex
- o registro de citação de referência no formato [BibTex] (http://www.bibtex.org/)
Datasets Endpoint
O endpoint datasets
interage com a tabela [Conjuntos de Dados] (/docs/concepts/data-access/#datasets) e com versões estáticas dos Conjuntos de Dados. Seu uso básico é obter uma lista dos Conjuntos de dados registrados. Útil para obter dataset_ids para importar medições, indivíduos, vouchers e midia. Além disso você pode baixar arquivos de versões estáticas dos dados, se alguma foi gerada. Isso permite um acesso aos dados de conjuntos de dados. O acesso aos dados vai depender se a versão tem licensa pública ou se o usuário é colaborador, administrador ou pode ver o conjunto de dados.
Parâmetros GET
id = list
retorna apenas referências com o id ou ids fornecidos (ex id = 1,2,3,10
)
list_versions = boolean
retorna a lista de arquivos e versões para um ou mais conjuntos de dados id
(ex id='1,2,3,4',list_versions=1
)
file_name = string
retorna os dados do arquivo indicado por esse parâmetro, conforme indicado na lista de versões retornada (ex id='1',file_name='2_Organisms.csv'
)
Campos de resposta
dataset_id
- o id do conjunto de dados na tabela de conjuntos de dados (um id de banco de dados local)
dataset
- o nome do conjunto de dados
version
- o nome da versão estática do conjunto de dados
license
- a licensa CreativeCommons da versão dos dados
access
- inicando se é OpenAccess ou se o usuário tem acesso
get_params
- como informar o argumento params
na função odb_get_datasets() do pacote do R para pegar os dados
- Retorna os dados do arquivo indicado
Sem list_versions ou file_name
id
- o id do conjunto de dados na tabela de conjuntos de dados (um id de banco de dados local)
name
- o nome do conjunto de dados
privacyLevel
- o nível de acesso para o conjunto de dados
contactEmail
- o e-mail do administrador do conjunto de dados
description
- uma descrição do conjunto de dados
policy
- a política de dados, se especificada
measurements_count
- o número de medições no conjunto de dados
taggedWidth
- a lista de tags aplicadas ao conjunto de dados
Biocollections Endpoint
O endpoint biocollections
interage com a tabela BioColeções. Seu uso básico é obter a lista das Coleções Biológicas cadastradas no banco de dados. Usando para obter biocollection_id
ou validar seus códigos para importar dados com os pontos de extremidade Vouchers ou Indivíduos.
Parâmetros GET
id = list
retorna apenas as Biocoleções tendo o id ou ids fornecidos (ex id = 1,2,3,10
)
acronym
retorna apenas Biocoleções tendo o acrônimo ou acrônimo fornecido (ex acronym = INPA, SP, NY
)
Campos de resposta
id
- o id do repositório ou museu na tabela de Biocoleções (um id de banco de dados local)
name
- o nome do repositório ou museu
acronym
- o acrônimo do repositório ou museu
irn
- apenas para Herbarios, o número do herbário no Index Herbariorum
Individuals Endpoint
O endpoint individuals
interage com a modelo Indivíduos. Seu uso básico é obter uma lista de indivíduos e dados associados.
Parâmetros GET
id = número ou lista
- retorna indivíduos que têm id ou ids ex: id = 2345,345
location = mixed
- retorna indivíduos por localidade, pode ser id ou nome ex: location = 24,25,26
location = Parcela 25ha
(ligações diretas)
location_root
- igual a location, mas retorna também dos descendentes das localidades informadas (ligações espaciais, tudo o que está dentro da(s) localidade(s))
taxon = mixed
- o id ou ids, ou nomes de táxons (nomes completos, canonicalName) ex: taxon = Aniba, Ocotea guianensis, Licaria cannela tenuicarpa
ou taxon = 456.789,3,4
taxon_root
- igual a taxon mas retorna também todos os indivíduos identificados como qualquer um dos descendentes dos táxons informados (por exemplo, taxon=Lauraceae
retorn todos os indivíduos da família)
project = mixed
- o id ou ids ou nomes do projeto, ex: project = 3
ou project = OpenDataBio
tag = list
- um ou mais códigos de identificação do individual, ex: tag = individuala1,2345,2345A
dataset = mixed
- o id ou ids ou nomes dos conjuntos de dados, retorna os indivíduos que têm medições nos conjuntos de dados informados
limit
e offset
- Consulte Parâmetros comuns.
Note
Observe que todos os campos de pesquisa (táxon, localidades e conjunto de dados) podem ser especificados como nomes (por exemplo, “taxon = Euterpe edulis”) ou como ids de banco de dados. Se uma lista for especificada para um desses campos, todos os itens da lista devem ser do mesmo tipo, ou seja, você não pode pesquisar por ’taxon = Euterpe, 24’. Além disso, location e taxon têm prioridade sobre location_root e taxon_root se ambos forem informados.
Campos de resposta
id
- o id do indivíduo na tabela de individuals (um id de banco de dados local)
basisOfRecord
DWC - será sempre DWC organism
organismID
DWC - uma combinação única local de informações de registro, composta de recordNumber,recordedByMain,locationName
recordedBy
DWC - lista separada de abreviações de pessoas registradas (usando pipe " | “)
recordedByMain
- a primeira pessoa listada em recordedBy
recordNumber
DWC - um identificador para o indivíduo, pode ser o código em uma etiqueta de alumínio de árvore, um código num anilha de uma ave, um número de coletor
recordedDate
DWC - a data de registro
scientificName
DWC - a identificação taxonômica atual do indivíduo (sem autores) ou “unidentified”
scientificNameAuthorship
DWC - a autoria do táxon. Para taxonomicStatus = não publicado será um nome de pessoa registrado ODB
family
DWC
genus
DWC
identificationQualifier
DWC - modificador do nome identificado cf. aff. s.l., etc.
identifiedBy
DWC - pessoa que atribuiu o scientificName
dateIdentified
DWC - data da identificação
identificationRemarks
DWC - notas da identificação
locationName
- nome da localidade
locationParentName
- nome da localidade pai da localidade do indivíduo
higherGeography
DWC - a hierarquia completa separada por pipe (’|’) - e.g. Brasil | Amazonas | Rio Preto da Eva | Fazenda Esteio | Reserva km37 | Manaus ForestGeo-PDBFF Plot | Quadrat 100x100 );
decimalLatitude
DWC - a latitude em graus decimais. O valor vai depender do tipo de localidade e da posição relativa do indivíduo (i.e. se houver atributos X e Y, ou Angle e Distance eles serão usados para calcular este valor). Se o indivíduo tiver multiplas localidades registradas (e.g. uma ave monitorada), esta será a coordenada da última localidade registrada.
decimalLongitude
DWC - mesmo que decimalLatitude, mas para longitude.
x
- a posição X do indivíduo dentro de uma localidade do tipo Parcela
y
- a posição Y do indivíduo dentro de uma localidade do tipo Parcela
gx
- a posição X do indivíduo dentro da localidade pai, quando a localidade for uma subparcela (e.g. protocolo ForestGeo)
gy
- a posição Y do indivíduo dentro da localidade pai, quando a localidade for uma subparcela (e.g. protocolo ForestGeo)
angle
- a direção do azimute da posição do indivíduo em relação uma coordenada geográfica (POINT location)
distance
- a distância do indivíduo a coordenada geográfica (POINT location), quando angle
é informado.
organismRemarks
DWC - notas associadas ao registro do Indivíduo
associatedMedia
DWC - urls para arquivos de media ligados ao indivíduo quando for o caso
datasetName
- nome do Conjunto de Dados ao qual o indivíduo pertence DWC
accessRights
- a política de acesso do Conjunto de dados - DWC
bibliographicCitation
- a citação para Conjunto de Dados - DWC
license
- a licensa para o Conjunto de Dados - DWC
Individual-locations Endpoint
O endpoint individual-locations
interage com a tabela individual_location. Seu uso básico é obter dados de ocorrência de indivíduos. Projetado para ocorrências de organismos que se movem e têm vários locais, caso contrário, a mesma informação é recuperada com o Endpoint Individuals.
Parâmetros GET
individual_id = número ou lista
- retorna indivíduos que têm id ou ids ex: id = 2345,345
location = mixed
- retorna indivíduos por localidade, pode ser id ou nome ex: location = 24,25,26
location = Parcela 25ha
(ligações diretas)
location_root
- igual a location, mas retorna também dos descendentes das localidades informadas (ligações espaciais, tudo o que está dentro da(s) localidade(s))
taxon = mixed
- o id ou ids, ou nomes de táxons (nomes completos, canonicalName) ex: taxon = Aniba, Ocotea guianensis, Licaria cannela tenuicarpa
ou taxon = 456.789,3,4
taxon_root
- igual a taxon mas retorna também todos os indivíduos identificados como qualquer um dos descendentes dos táxons informados (por exemplo, taxon=Lauraceae
retorn todos os indivíduos da família)
dataset = mixed
- o id ou ids ou nomes dos conjuntos de dados, retorna os indivíduos que têm medições nos conjuntos de dados informados
limit
e offset
- Consulte Parâmetros comuns.
Note
Observe que todos os campos de pesquisa (táxon, localidades e conjunto de dados) podem ser especificados como nomes (por exemplo, “taxon = Euterpe edulis”) ou como ids de banco de dados. Se uma lista for especificada para um desses campos, todos os itens da lista devem ser do mesmo tipo, ou seja, você não pode pesquisar por ’taxon = Euterpe, 24’. Além disso, location e taxon têm prioridade sobre location_root e taxon_root se ambos forem informados.
Campos de resposta
-
individual_id
- o id do indivíduo na tabela de individuals (um id de banco de dados local)
-
location_id
- o id do local na tabela de locations (um id de banco de dados local)
-
basisOfRecord
- será sempre ‘occurrence’ - DWC e DWC occurrence;
-
occurrenceID
- o identificador único para este registro, o indivíduo + local + date_time - DWC
-
organismID
- o identificador exclusivo para o indivíduo DWC
-
recordedDate
- a data e hora do registro da ocorrência [DWC] (https://dwc.tdwg.org/terms/#dwc:recordedDate)
-
locationName
- o nome da localidade
-
higherGeography
DWC - a hierarquia completa separada por pipe (’|’) - e.g. Brasil | Amazonas | Rio Preto da Eva | Fazenda Esteio | Reserva km37 | Manaus ForestGeo-PDBFF Plot | Quadrat 100x100 );
-
decimalLatitude
DWC - a latitude em graus decimais. O valor vai depender do tipo de localidade e da posição relativa do indivíduo (i.e. se houver atributos X e Y, ou Angle e Distance eles serão usados para calcular este valor). Se o indivíduo tiver multiplas localidades registradas (e.g. uma ave monitorada), esta será a coordenada da última localidade registrada.
-
decimalLongitude
DWC - mesmo que decimalLatitude, mas para longitude.
-
x
- a posição X do indivíduo dentro de uma localidade do tipo Parcela
-
y
- a posição Y do indivíduo dentro de uma localidade do tipo Parcela
ForestGeo)
-
angle
- a direção do azimute da posição do indivíduo em relação uma coordenada geográfica (POINT location)
-
distance
- a distância do indivíduo a coordenada geográfica (POINT location), quando angle
é informado.
-
organismRemarks
DWC - notas associadas ao registro do Indivíduo
-
associatedMedia
DWC - urls para arquivos de media ligados ao indivíduo quando for o caso
-
datasetName
- nome do Conjunto de Dados ao qual o indivíduo pertence DWC
-
accessRights
- a política de acesso do Conjunto de dados - DWC
-
bibliographicCitation
- a citação para Conjunto de Dados - DWC
-
license
- a licensa para o Conjunto de Dados - DWC
-
scientificName
DWC - a identificação taxonômica atual do indivíduo (sem autores) ou “unidentified”
-
family
DWC
-
datasetName
- nome do Conjunto de Dados ao qual o indivíduo pertence DWC
-
accessRights
- a política de acesso do Conjunto de dados - DWC
-
bibliographicCitation
- a citação para Conjunto de Dados - DWC
-
license
- a licensa para o Conjunto de Dados - DWC
-
minimumElevation
- a altitude da ocorrência, se registrado - DWC
-
occurrenceRemarks
- qualquer nota associada ao registro de ocorrência do indivíduo - DWC
Measurements Endpoint
O endpoint measurements
interage com o modelo Medições. Seu uso básico é obter dados vinculados a indivíduos, táxons, localidades ou vouchers, independentemente dos conjuntos de dados, por isso é útil quando você deseja obter medições específicas de diferentes conjuntos de dados aos quais você tem acesso. Se você quiser um conjunto de dados completo, mais fácil usar a interface da web, pois ela prepara um conjunto completo de medições do conjunto de dados e todas as tabelas de dados associados.
Parâmetros GET
id = lista de ids
retorna apenas a medição ou medições tendo o id ou ids fornecidos (ex id = 1,2,3,10
)
taxon = lista de ids ou nomes
retorna apenas as medições relacionadas aos táxons, tanto medidas diretas quanto medidas indiretas de seus indivíduos e vouchers. Não considera os táxons descendentes para esse uso, em vez disso, use taxon_root
. Por exemplo, taxon = Aniba, Licaria
irá retornar apenas medições diretamente ligadas ao gênero e vouchers identificados em nível de gênero.
taxon_root = lista de ids ou nomes
semelhantes a taxon
, mas obtém também medições para táxons descendentes da consulta informada (ex taxon = Lauraceae
obterá medições vinculadas a Lauraceae e qualquer táxon que pertença a ela);
dataset = lista de ids
retorna apenas as medições pertencentes aos datasets informados (ex dataset = 1,2
)
trait = lista de ids ou export_names
retorna apenas as medições para as variáveis informadas (ex trait=DBH, DBHpom
ou dataset=2&trait=DBH
)
individual = lista de ids indivíduos
retorna apenas as medições para os indivíduos com esses id informados (ex individual = 1000,1200
)
voucher = lista de ids de vouchers
retorna apenas as medições para os vouchers com esses id informados (ex voucher = 345,321
)
location = lista de ids de localidades
retorna apenas medições para as localidades informados (ex: location = 4,3,2,1
) - não recupera medições para indivíduos e vouchers nessas locais, apenas medições relacionados às próprias localidaes, como, por exemplo, dados de levantamentos de solo de parcelas.
limit
e offset
- Consulte Parâmetros comuns.
Campos de resposta
id
- o id da medição na tabela de measurements (id do banco de dados local)
basisOfRecord
DWC - será sempre ‘MeasurementsOrFact’ [dwc measureorfact](DWC measureorfact
measured_type
- o objeto medido, um de ‘Individual’, ‘Location’, ‘Taxon’ ou ‘Voucher’
measured_id
- o id do objeto medido na respectiva tabela de objetos (individuals.id, locations.id, taxons.id, vouchers.id)
measurementID
DWC - um identificador único para a medição
measurementType
DWC - o export_name para a Variável medida
measurementValue
DWC - o valor da medição - dependerá do tipo de medição ver Variáveis
measurementUnit
DWC - a unidade de medida para variáveis quantitativas
measurementDeterminedDate
DWC - a data da medição
measurementDeterminedBy
DWC - Pessoa responsável pela medição
measurementRemarks
DWC - nota de texto associada a este registro de medição
resourceRelationship
DWC - o objeto medido (recurso) - um de ’location’,’taxon’,‘organism’,‘preservedSpecimen’
resourceRelationshipID
DWC - o id do resourceRelationship
relationshipOfResource
DWC - será sempre ‘measurement of’
scientificName
DWC - a identificação taxonômica relacionada à medição, se for o caso
family
DWC - a família taxonômica, se for o caso.
datasetName
- nome do Conjunto de Dados ao qual a medição pertence DWC
accessRights
- a política de acesso do Conjunto de dados - DWC
bibliographicCitation
- a citação para Conjunto de Dados - DWC
license
- a licensa para o Conjunto de Dados - DWC
measurementLocationId
- o ODB id da localidade associada à medição
measurementParentId
- o ODB id de outra medição relacionada (a medição pai da qual esta depende)
decimalLatitude
DWC - a latitude em graus decimais da medição ou do objeto medido.
decimalLongitude
DWC - a longitude em graus decimais da medição ou do objeto medido.
O endpoint media
interage com a tabela media. Seu uso básico é obter os metadados associados aos arquivos de mídia, incluindo a URL dos arquivos.
Parâmetros GET
individual = número ou lista
- retorna mídia associada aos indivíduos com id ou ids, por exemplo: id = 2345,345
voucher = number or list
- retorna mídia associada aos vouchers com id ou ids, por exemplo: id = 2345,345
location = mixed
- retorna mídia associada a localidades, pode ser id ou nome ex: location = 24,25,26
location = Parcela 25ha
(ligações diretas)
location_root
- igual a location, mas retorna também dos descendentes das localidades informadas (ligações espaciais, tudo o que está dentro da(s) localidade(s))
taxon = mixed
- o id ou ids, ou nomes de táxons (nomes completos, canonicalName) ex: taxon = Aniba, Ocotea guianensis, Licaria cannela tenuicarpa
ou taxon = 456.789,3,4
taxon_root
- igual a taxon mas retorna também todos os indivíduos identificados como qualquer um dos descendentes dos táxons informados (por exemplo, taxon=Lauraceae
retorn todos os indivíduos da família)
dataset = mixed
- o id ou ids ou nomes dos conjuntos de dados, retorna mídia pertencentes aos conjuntos de dados informados
limit
e offset
- Consulte Parâmetros comuns.
Note
Observe que todos os campos de pesquisa (táxon, localidades e conjunto de dados) podem ser especificados como nomes (por exemplo, “taxon = Euterpe edulis”) ou como ids de banco de dados. Se uma lista for especificada para um desses campos, todos os itens da lista devem ser do mesmo tipo, ou seja, você não pode pesquisar por ’taxon = Euterpe, 24’. Além disso, location e taxon têm prioridade sobre location_root e taxon_root se ambos forem informados.
Response fields
id
- o id da medição na tabela measurements (local database id)
basisOfRecord
DWC - será sempre ‘MachineObservation’ DWC
model_type
- o objeto relacionado ‘Individual’, ‘Location’, ‘Taxon’ or ‘Voucher’
model_id
- o id do objeto relacionado na respectiva tabela (individuals.id, locations.id, taxons.id, vouchers.id)
resourceRelationship
DWC - o objeto relacionado - one of ’location’,’taxon’,‘organism’,‘preservedSpecimen’
resourceRelationshipID
DWC - o id não numérico do resourceRelationship
relationshipOfResource
DWC - será um ‘dwcType’
recordedBy
DWC - lista separada por pipe “|” das Pessoas autores
recordedDate
DWC - a data do arquivo de mídia
scientificName
DWC - a identificação taxonômica do objeto na mídia, quando for o caso.
family
DWC
dwcType
DWC - um de StillImage, MovingImage, Sound
family
DWC - a família taxonômica, se for o caso.
datasetName
- nome do Conjunto de Dados ao qual a mídia pertence DWC
accessRights
- a política de acesso do Conjunto de dados - DWC
bibliographicCitation
- a citação para Conjunto de Dados - DWC
license
- a licensa para o Conjunto de Dados - DWC
file_name
- nome do arquivo
file_url
- o endereço do arquivo
Languages EndPoint
O endpoint languages
interage com a tabela Language. Seu uso básico é obter uma lista de idiomas registrados para importar Traduções do usuário como é o caso dos nomes de Variáveis e categorias, ou descrições de arquivos de mídia.
Campos de resposta
id
- o id do idioma na tabela de idiomas (um id de banco de dados local)
code
- o código do idioma;
name
- o nome do idioma;
Locations Endpoint
O endpoint locations
interage com a modelo Localidades. Seu uso básico é obter uma lista de localidades registradas
Parâmetros GET
id = list
retorna apenas localidades com o id ou ids fornecidos (ex: id = 1,2,3,10
)
adm_level = number
retorna apenas localidades para o nível ou tipo especificado:
- 2 para o país; 3 para a primeira divisão dentro do país (província, estado); 4 para a segunda divisão (por exemplo, município) … até adm_level 10 como áreas administrativas (Geometria: polígono, multipolygon);
- 97 é o código para Camadas Ambientais (Geometria: polygon, multipolygon);
- 98 é o código para Áreas Indígenas (Geometria: polygon, multipolygon);
- 99 é o código para Unidades de Conservação (Geometria: polygon, multipolygon);
- 100 é o código para PARCELAS e SUB-PARCELAS (Geometria: polygon ou point);
- 101 para transectos (geometria: point ou linestring)
- 999 para qualquer localidades de ‘PONTO’ como waypoints GPS (Geometria: point);
name = string
retorna apenas as localidades cujo nome corresponde à string de pesquisa. Você pode usar asterisco como curinga. Exemplo: nome=Manaus
ounome=*Ducke*
para encontrar o nome que possui a palavra Ducke;
parent_id = list
retorna as localidades cujo pai imediato na lista (ex: parent_id = 2,3)
root = number
id da localidade para pesquisar, retorna as localidades para a id especificada junto com todas as localidades descendentes; exemplo: encontre o id para o Brasil e use seu id como root para obter todos as localidades pertencentes ao Brasil;
querytype
um de “exact”,“parent” ou “closest” e deve ser fornecido com lat
e long
:
- quando
querytype = exact
encontrará uma localidade do tipo POINT que tem a correspondência exata de lat
e long
;
- quando
querytype = parent
encontrará a localidade pai mais inclusiva dentro da qual as coordenadas fornecidas por lat
e long
caem;
- quando
querytype = closest
irá encontrar a localidade mais próxima das coordenadas dadas por lat
e long
; Ele pesquisará apenas os locais mais próximos com adm_level>99
, veja acima.
lat
e long
devem ser coordenadas válidas em graus decimais (negativo para Sul e Oeste);
fields = list
especifica quais campos você deseja obter com sua consulta (veja abaixo os nomes dos campos), ou use as opções ‘all’ ou ‘simple’, para obter o conjunto completo e as colunas mais importantes, respectivamente
project = mixed
- id ou nome do projeto (pode ser uma lista) retorna as localidades utilizadas em um ou mais projetos
dataset = mixed
- id ou nome de um conjunto de dados (pode ser uma lista) retorna as localidades utilizadas a um ou mais conjuntos de dados
limit
e offset
- Consulte Parâmetros comuns.
Note que id
, search
, parent
e root
não devem ser combinadas na mesma busca;
Response fields
id
- o id da localidade na tabela locations (um id de banco de dados local)
basisOfRecord
DWC - sempre conterá ’location’ (DWC location
locationName
- o nome do local (se o país for o nome do país, se indicar o nome do estado, etc …)
adm_level
- o valor numérico para o nível administrativo ODB (2 para países, etc)
levelName
- o nome do nível administrativo ODB
parent_id
- o id da localidade pai na tabela locations
parentName
- o nome do pai imediato da localidade
higherGeography
[DWC] (https://dwc.tdwg.org/terms/#dwc:higherGeography) - o caminho completo das localidades pais,(por exemplo, Brasil | São Paulo | Cananéia);
footprintWKT
DWC - a representação geométrica da localidade em formato WKT; para localidades com adm_level==100
(parcelas) ou adm_level==101
mas informadas como POINT, as geometrias do polygon ou linestring, respectivamente, serão geradas a partir das dimensões especificadas para essas localidades.
x
e y
- (metros) para localidades do tipo Parcela (100 == adm_level), as dimensões X e Y. Para localidades do tipo Transecto (101 == adm_level), x pode ser o comprimento do transecto e Y um valor de buffer para inclusão de indivíduos
startx
e starty
- (meters) se a localidde for uma subparcela (100 == adm_level com localidade pai também adm_level==100), esses valores representam a posição X e Y da subparcela em relação as coordenadas 0,0 da parcela pai;
distance
- apnas quando querytype=closest este valor representa a distância em metros da localidade pesquisada a localidade obtida
locationRemarks
DWC - quaquer nota associada ao registro da localidade
decimalLatitude
DWC - depende do adm_level: se adm_level<=99, a latitude do centroid; se adm_level == 999 (point), a latitude do ponto; se adm_level==100 (parcela) or 101 (transecto), mas estes informados com uma geometria do tipo POINT, a latitude do POINT, caso contrário, se geometria POLYGON ou LINESTRING, o a coordenada do primeiro ponto da geometria.
decimalLongitude
DWC - mesmo para decimalLatitude
georeferenceRemarks
DWC - explicação sobre como decimalLatitude e decimalLongitude form calculados
geodeticDatum
-DWC - o geodeticDatum informado para a geometria (ODB não faz reprojeções espaciais, assumes que dados espaciais são sempre WSG84)
Persons Endpoint
O endpoint persons
interage com a tabela Person. O uso básico é obter uma lista de pessoas cadastradas (coletores de dados, especialistas taxonômicos, etc).
Parâmetros GET
id = list
retorna apenas pessoas com o id ou ids fornecidos (ex: id = 1,2,3,10
)
name = string
- retorna pessoas cujo nome corresponde à string especificada. Você pode usar asterisco como curinga. Ex: name =*ducke*
abbrev = string
, retorna pessoas cuja abreviação corresponde à string especificada. Você pode usar asterisco como curinga.
email = string
, retorna pessoas cujo e-mail corresponde à string especificada. Você pode usar asterisco como curinga.
search = string
, retorna pessoas cujo nome, abreviatura ou e-mail corresponde à string especificada. Você pode usar asterisco como curinga.
limit
e offset
- Consulte Parâmetros comuns.
Campos de resposta
id
- o id da pessoa na tabela de pessoas (um id de banco de dados local)
full_name
- o nome da pessoa;
abbreviation
- o nome da pessoa (estes são valores ÚNICOS em um banco de dados OpenDataBio)
email
- o e-mail, se registrado ou a pessoa é o usuário
institution
- a instituição de pessoas, se registrada
notes
- quaisquer notas registradas;
biocollection
- o nome da Coleção Biológica (Biocollections, etc) à qual a pessoa está associada
Projects EndPoint
O endpoint projects
interage com a tabela [projects](/docs /concepts /data-access /#projects). O uso básico é obter os projetos registrados.
Parâmetros GET
id = list
retorna apenas projetos com o id ou ids fornecidos (ex id = 1,2,3,10
)
Campos de resposta
id
- o id do projeto na tabela de projetos (um id de banco de dados local)
fullname
- nome do projeto
contactEmail
- o e-mail do administrador do projeto
individual_count
- o número de indivíduos no projeto
vouchers_count
- o número de vouchers no projeto
Taxons Endpoint
O endpoint taxons
interage com a tabela [taxons](/docs /concepts /core-objects/#taxons). O uso básico é obter uma lista de nomes taxonômicos registrados.
Parâmetros GET
id = list
retorna apenas táxons com o id ou ids fornecidos (ex: id = 1,2,3,10
)
name = search
retorna apenas táxons com fullname (sem autores) correspondendo à string de pesquisa. Você pode usar asterisco como curinga.
root = number
retorna o táxon para o id especificado junto com todos os seus descendentes
level = number
retorna apenas táxons para o taxonRank.
valid = 1
retorna apenas nomes válidos
external = 1
retorna os números de referência Tropicos, IPNI, MycoBank, ZOOBANK ou GBIF. Você precisa especificar externalrefs
na lista de campos para retorná-los!
project = mixed
- id ou nome do projeto (pode ser uma lista) retorna os táxons pertencentes a um ou mais Projetos
dataset = mixed
- id ou nome de um conjunto de dados (pode ser uma lista) retorna os táxons pertencentes a um ou mais conjuntos de dados
limit
e offset
- Consulte Parâmetros comuns.
Note que id
, name
e root
não devem ser combinadas na mesma busca;
Campos de resposta
id
- este id ODB para este registro de táxons na tabela de táxons
senior_id
- se inválido, o id do nome aceito para este taxon (acceptedNameUsage) - somente quando taxonomicStatus == ‘invalid’
parent_id
- o id do táxon pai
author_id
- o id da pessoa que definiu o táxon para nomes não publicados (ter um author_id significa que o táxon não foi publicado)
scientificName
DWC - o nome taxonômico completo sem autores (ou seja, incluindo o nome do gênero e epíteto do nome da espécie)
ScientificNameID
DWC - IDs de bancos de dados nomenclaturais, se qualquer referência externa for armazenada para este registro de táxon
taxonRank
DWC - o nível taxonômico do taxon registrado
level
- o valor numérico do taxonRank para o OpenDataBio
scientificNameAuthorship
DWC - a autoria do táxon. Para não publicado será um nome de pessoa registrado ODB
namePublishedIn
- referência bibliográfica unificada (ou seja, o formato curto ou um trecho da referência do bibtex atribuído). Isso será recuperado principalmente de bancos de dados nomenclaturais; As referências vinculadas a táxons podem ser extraídas com o endpoint BibReferences.
taxonomicStatus
DWC - um de ‘accepted’, ‘invalid’ ou ‘unpublished’; se invalid, os campos senior_id and acceptedNameUsage serão preenchidos.
parentNameUsage
[DWC] (https://dwc.tdwg.org/terms/#dwc:parentNameUsage) - o nome do táxon pai, se espécie, gênero, se gênero, família e assim por diante
family
[DWC] (https://dwc.tdwg.org/terms/#dwc:family) - o nome da família taxonômica quando for o caso.
higherClassification
[DWC] (https://dwc.tdwg.org/terms/#dwc:higherClassification) - a classificação hierárquica taxonômica completa, separada por “|” (incluirá apenas táxons registrados neste banco de dados)
acceptedNameUsage
[DWC] (https://dwc.tdwg.org/terms/#dwc:acceptedNameUsage) - se taxonomicStatus for inválido, o nome científico válido para este táxon
acceptNameUsageID
[DWC] (https://dwc.tdwg.org/terms/#dwc:acceptedNameUsageID) - se taxonomicStatus for inválido os ids ScientificNameID do táxon válido
taxonRemarks
[DWC] (https://dwc.tdwg.org/terms/#dwc:taxonRemarks) - qualquer nota que o registro do táxon possa ter
basisOfRecord
[DWC] (https://dwc.tdwg.org/terms/#dwc:basisOfRecord) - será sempre ’taxon’
externalrefs
- os números de referência Tropicos, IPNI, MycoBank, ZOOBANK ou GBIF
Traits Endpoint
O endpoint traits
interage com o modelo Variáveis. O uso básico é obter uma lista de variáveis e categorias de variáveis para importar Medições.
Parâmetros GET
id = lista
retorna apenas variáveis tendo o id ou ids fornecidos (ex id = 1,2,3,10
);
name = string
retorna apenas variáveis com o export_name
indicado (ex: name = DBH
) - para mais opções de busca, baixe toda a biblioteca e filtre localmente.
categories
- se verdadeiro, retorna as categorias para variáveis categóricas
language = mixed
idioma para retorno dos nomes e descrições da variável e das categorias para variáveis categóricas. Os valores podem ser ’language_id’, ’language_code’ ou ’language_name’;
bibreference = boolean
- se verdadeiro, inclui a [BibReference](/docs/concepts/auxiliary-objects/# bibreference) associado à definição da variável, se houver.
limit
e offset
- Consulte Parâmetros comuns.
Campos de resposta
id
- o id do Trait na tabela odbtraits (um id de banco de dados local)
type
- o código numérico que define o tipo de característica
typename
- o nome do tipo de Trait
export_name
- o valor do nome de exportação
measurementType
DWC - o mesmo que export_name para compatibilidade DWC
measurementMethod
DWC - combine nome, descrição e categorias se aplicável (incluído na API Measurement GET, para compatibilidade DWC)
measurementUnit
- a unidade de medida para características quantitativas
measurementTypeBibkeys
- os bibkeys das referências bibliográficas associadas à definição do trait, separados por barra vertical ‘|’
taggedWith
- o nome das tags ou palavras-chave associadas à definição da característica, separados por barra vertical ‘|’
range_min
- o valor mínimo permitido para características quantitativas
range_max
- o valor máximo permitido para características quantitativas
link_type
- se o tipo de link trait, a classe do objeto ao qual o traço se vincula (atualmente apenas Taxon)
name
- o nome do trait no idioma solicitado ou no idioma padrão
description
- a descrição do traço no idioma solicitado ou no idioma padrão
value_length
- o comprimento dos valores permitidos para variáveis Espectrais (juntamente com range_min e range_max, define o espaçamento entre os valores que fazem o espectro medido.
objects
- os tipos de objeto para os quais o traço pode ser usado, separados por barra vertical ‘|’
categories
- para variáveis categóricas e ordinais, um sub conjunto com os seguintes campos para cada categoria: id
, name
, description
e rank
. O rank é informativo apenas para variáveis ORDINAIS, mas é reportado para todas as variáveis categóricas.
Vouchers Endpoint
O endpoint vouchers
interage com o modelo Vouchers. Seu uso básico é obter dados de espécimes de Coleções Biológicas
Parâmetros GET
id = list
retorna apenas vouchers com o id ou ids fornecidos (ex id = 1,2,3,10
)
numero = string
retorna apenas vouchers para o número do coletor informado (mas é uma string e pode conter caracteres não numéricos)
collector = mixed
um dos id ou ids ou abreviações, retorna apenas vouchers para o coletor principal informado
dataset = list
- lista de id ou ids, ou nomes do conjuntos de dados, retorna todos os vouchers relacionados aos conjuntos de dados informados, incluindo vouchers associados indiretamente (por exemplo, vouchers de medições ou de arquivos de mídia nos conjuntos de dados informados)
project = mixed
um de ids ou nomes, retorna apenas os vouchers para o projeto informado.
location = mixed
um de ids ou nomes; filtra vouchers diretamente vinculados à(s) localidades(s)
location_root = mixed
- igual a location, mas inclui também os vouchers para as localides descendentes das localidades informadas. por exemplo. “location_root = Manaus” para obter qualquer voucher coletado dentro da área administrativa de Manaus, enquanto “location=Manaus” retorna apenas indivíduos cuja localidade é Manaus, mas indivíduos ligados a outras localidades dentro do município..;
individual=mixed
id ou lista de ids, ou organismID(s) de indivíduos, retorna apenas vouchers para os indivíduos informados
taxon = mixed
um de ids ou nomes, retorna apenas vouchers para os táxons informados.
taxon_root = mixed
- igual a taxon, mas incluirá vouchers para os descendentes dos táxons informados. por exemplo. “taxon_root = Lauraceae” para obter qualquer voucher de Lauraceae e “taxon=Lauraceae” para obter vouchers identificados no nível de família.
Note
Observe que todos os campos de pesquisa (táxon, localidades e conjunto de dados) podem ser especificados como nomes (por exemplo, “taxon = Euterpe edulis”) ou como ids de banco de dados. Se uma lista for especificada para um desses campos, todos os itens da lista devem ser do mesmo tipo, ou seja, você não pode pesquisar por ’taxon = Euterpe, 24’. Além disso, location e taxon têm prioridade sobre location_root e taxon_root se ambos forem informados.
Campos de resposta
id
- o id do voucher na table vouchers (id local da instalação)
basisOfRecord
DWC - será sempre ‘preservedSpecimen’ [dwc location](DWC
occurrenceID
DWC - o identificador único do voucher que combina collectionCode+catalogNumber+organismID
organismID
DWC -o identificador textual do Indivíduo ao qual o Voucher pertence
individual_id
- o id do Indivíduo na tabela individuals (id local)
collectionCode
DWC - o acrônimo da Coleção Biológica onde o Voucher está depositado
catalogNumber
DWC - o número de tombo (id) do Voucher na Coleção Biológica
typeStatus
DWC - se o Voucher representa um tipo nomenclatural
recordedBy
DWC - abbreviações de coletores separados por pipe “|”
recordedByMain
- a primeira pessoa listada em recordedBy, o coletor ao qual pertence o recordNumber
recordNumber
DWC - o número do coletor ou identificador do Voucher.
recordedDate
DWC - a data de coleta (pode estar incompleta)
scientificName
DWC - o nome científico do Indivíduo ao qual o voucher pertence.
scientificNameAuthorship
DWC - o autor do nome taxonomico. Para taxonomicStatus unpublished será o nome da Pessoa que criou o nome não publicado.
family
DWC
genus
DWC
identificationQualifier
DWC - modificadores do nome para a identificação atribuída: cf. aff. s.l., etc.
identifiedBy
DWC - Pessoa que identificou
dateIdentified
DWC - data da identificação
identificationRemarks
DWC - notas de identificacao
locationName
- nome da localidade em que o indivíduo estava quando foi coletado (quando o indivíduo tem mais de uma localidade, a localidade da data mais próxima)
higherGeography
DWC - o caminho completo até LocationName ‘|’ separated (e.g. Brasil | Amazonas | Rio Preto da Eva | Fazenda Esteio | Reserva km37);
decimalLatitude
DWC - depende do tipo de localidade e dos atributos de posição relativa do Indivíduo ao qual o Voucher pertence. Se o indivíduo tiver vários locais (uma ave monitorado), o local mais próximo da data em que o voucher foi obtido
decimalLongitude
DWC - mesmo que para decimalLatitude
occurrenceRemarks
DWC - notas para este registro
associatedMedia
DWC - urls para arquivos de mídia associados a este registro
datasetName
- nome do Conjunto de Dados ao qual o indivíduo pertence DWC
accessRights
- a política de acesso do Conjunto de dados - DWC
bibliographicCitation
- a citação para Conjunto de Dados - DWC
license
- a licensa para o Conjunto de Dados - DWC
Jobs Endpoint
O endpoint jobs
interage com o modelo [UserJobs] (/docs/concepts/data-access/#user-jobs). O uso básico é obter uma lista de trabalhos de importação, junto com uma mensagem de status e logs. Você também pode obter dados solicitados usando o parâmetro save_job=1
ou através da interface da web.
Parâmetros GET
id
- id do job (id local)
status = string
retorna apenas jobs para o status especificado: “Submitted”, “Processing”, “Success”, “Failed” ou “Cancelled”;
get_file
- se get_file=1
, então você pode obter o arquivo de dados salvo por um job. Isso também precisa de um único parâmetro id
. Útil, ao obter dados com a opção save_job=1
.
Campos de resposta
id
- id do job (id local)
status
- o status do trabalho:” Enviado “,” Processando “,” Sucesso “,” Falha “ou” Cancelado “;
dispatcher
- o tipo de trabalho, por exemplo, ImportTaxons;
log
- as mensagens de log do job, geralmente indicando se os recursos foram importados com sucesso ou se ocorreram erros;
outros.
Possíveis erros
Esta é uma pequena lista de códigos de erro que você pode receber ao usar a API. Se você receber qualquer outro código de erro, envie um issue para o repositório.
- Error 401 - Unauthenticated. Currently not implemented. You may receive this error if you attempt to access some protected resources but didn’t provide an API token.
- Error 403 - Unauthorized. You may receive this error if you attempt to import or edit some protected resources, and either didn’t provide an API token or your user does not have enough privileges.
- Error 404 - The resource you attempted to see is not available. Note that you can receive this code if your user is not allowed to see a given resource.
- Error 413 - Request Entity Too Large. You may be attempting to send a very large import, in which case you might want to break it down in smaller pieces.
- Error 429 - Too many attempts. Wait one minute and try again.
- Error 500 - Internal server error. This indicates a problem with the server code. Please file a bug report with details of your request.
3 - Inserir dados - POST
Como importar dados ao OpenDataBio usando a API
POST Individuals
Campos para importar indivíduos:
collector = mixed
- obrigatório - pessoas - pode ser ‘id’, ‘abbreviation’, ‘full_name’, ’email’; se houver várias pessoas, separe os valores em sua lista com a barra vertical |
ou ;
porque vírgulas podem estar presentes nos nomes. O coletor principal é o primeiro da lista;
tag = string
- obrigatório - o seu código ou número para o indivíduo (número da placa, número de coletor, número de anilha, etc)
dataset = mixed
- obrigatório - nome ou id do Conjunto de Dados para colocar o Indivíduo
date = AAAA-MM-DD ou matriz
- data em que o indivíduo foi coletado/etiquetado - para registros históricos pode-se informar uma string incompleta no formato “1888-05-NA” ou “1888-NA-NA"quando dia ou mês são desconhecidos. Pode-se informar também como array no formato “data = {‘year’: 1888, ‘month’: 5}”. OpenDataBio lida com datas incompletas, consulte o Modelo de dados incompletos. Pelo menos year
é obrigatório.
notes=string
- qualquer anotação para o Indivíduo, um texto simples ou dados em JSON;
Campos de localidade (uma ou mais localidades podem ser registradas para 1 indivíduo). Os campos possíveis são:
location
- o nome ou id do local do Indivíduo obrigatório se a longitude e a latitude não forem informadas
latitude
e longitude
- coordenadas geográficas em graus decimais; obrigatório se location não for informado
altitude
- a elevação do local onde o Indivíduo foi observado (em metros acima do nível do mar). Precisa ser um número inteiro;
location_notes
- qualquer nota para a localidade do Indivíduo, um texto simples ou dados em JSON;
location_date_time
- se diferente da data do indivíduo, uma data completa ou um valor de data + hora para a localidade do indivíduo. Obrigatório quando importando várias localidades.
x
- se a localidade for do tipo Parcela (adm_level=100) ou Transecto (adm_level=101), a coordenada x do indivíduo na localidade;
y
- se a localidade for do tipo Parcela (adm_level=100) ou Transecto (adm_level=101), a coordenada y do indivíduo na localidade;
distance
- se o localidade for do tipo PONTO, uma distância para a posição do indivíduo em relação ao PONTO (em metros). Útil, com angle
para, por exemplo, dados de Ponto Quadrante;
angle
- se a localidade for do tipo PONTO, o azimute da posição do Indivíduo em relação à localidade;
Campos de identificação. A identificação taxonômica não é obrigatória, podendo ser informada de duas formas distintas: (1) identificação-própria
- o indivíduo pode ter sua própria identificação; ou (2) identificação-dependente
a identificação é a mesma que a de outro indivíduo (por exemplo, quando múltiplos indivíduos tem sua identificação associada a um único indivíduo para o qual existe um voucher num Biocoleção)
- Os seguintes campos podem ser usados para a
identificação-própria
do indivíduo:
taxon = mixed
- nome ou id do táxon identificado, por ex. ‘Ocotea delicata’ ou seu id
identifier = mixed
- uma ou mais pessoas responsável(is) pela identificação taxonômica. Pode informar ‘id’, ‘abbreviation’, ‘full_name’ ou ’email’. Se houver várias pessoas, separe os valores em sua lista com a barra vertical |
ou ;
porque vírgulas podem estar presentes nos nomes.
identification_date
ou identification_date_year
, identification_date_month
, e/ou identification_date_day
- completo ou incompleto. Se vazio, a data de coleta do indivíduo será usada.
modifier
- nome ou número do modificador do nome da identificação. Valores possíveis ’s.s.’ = 1, ’s.l.’ = 2, ‘cf.’ = 3, ‘aff.’ = 4, ‘vel aff.’ = 5, o padrão é 0 (nenhum).
identification_notes
- quaisquer notas de identificação, um texto simples ou dados em JSON;
identification_based_on_biocollection
- o nome ou id da Biocoleção se a identificação for baseada em um espécime de referência depositado em uma Biocoleção (registrada ou não na base)
identification_based_on_biocollection_id
- somente preencher se identification_based_on_biocollection
estiver preenchido;
- Para uma
identificação-dependente
identification_individual
- id ou nome completo (organimsID) do Indivíduo que possui a identificação.
Se o Indivíduo tiver Vouchers com os mesmos Coletores, Data e Número do Coletor (Tag) que os do Indivíduo, os seguintes campos e opções permitem armazenar os vouchers durante a importação do registro do Indivíduo (como alternativa, você pode importar o voucher após a importação indivíduos através do Voucher EndPoint. Os vouchers para o indivíduo podem ser informados de duas maneiras:
- Ou como campos separados:
biocollection
- uma string com um único valor ou uma lista de valores separados por vírgulas. Os valores podem ser os valores id
ou acronym
do Modelo de Biolcoleções. Ex: “{‘biocollection’: ‘INPA; MO; NY’}” ou “{‘biocollection’: ‘1,10,20’}”;
biocollection_number
- uma string com um único valor ou uma lista de valores separados por vírgulas com o BiocollectionNumber para o voucher individual. Se for uma lista, então deve ter o mesmo número de valores que biocollection
;
biocollection_type
- Uma string com um único valor de código numérico ou uma lista de valores separados por vírgulas para Tipo Nomenclatural para os Vouchers. O valor padrão é 0 (não é um tipo).
- Como um único campo
biocollection
contendo uma matriz com cada elemento tendo os campos acima para uma única BioColeção:
“{
{ ‘biocollection_code’ : ‘INPA’, ‘biocollection_number’ : 59786, ‘biocollection_type’ : 0},
{ ‘biocollection_code’ : ‘MG’, ‘biocollection_number’ : 34567, ‘biocollection_type’ : 0}
}”
POST Individual-locations
O endpoint individual-locations
permite a importação de várias localidades para Indivíduos previamente registrados. Projetado para importação de múltiplas ocorrências de organismos que se movem.
Possible fields are:
individual
- o id do Indivíduo obrigatório
location
- o nome ou id do local do Indivíduo obrigatório se a longitude e a latitude não forem informadas
latitude
e longitude
- coordenadas geográficas em graus decimais; obrigatório se location não for informado
altitude
- a elevação do local onde o Indivíduo foi observado (em metros acima do nível do mar);
location_notes
- qualquer nota para a localidade do Indivíduo, um texto simples ou dados em JSON;
location_date_time
- se diferente da data do indivíduo, uma data completa ou um valor de data + hora para a localidade do indivíduo. Obrigatório quando importando várias localidades.
x
- se a localidade for do tipo Parcela (adm_level=100) ou Transecto (adm_level=101), a coordenada x do indivíduo na localidade;
y
- se a localidade for do tipo Parcela (adm_level=100) ou Transecto (adm_level=101), a coordenada y do indivíduo na localidade;
POST Locations
O endpoint locations
interage com o modelo Localidades. Use para importar novas localidades.
Atenção
As localidades são armazenadas com um relacionamento pai-filho, garantindo validações e facilitando consultas. Os pais serão adivinhados usando a geometria da localidade sendo importada. Se o pai não for informado, o local importado deve estar completamente contido por um pai registrado (a função sql ST_WITHIN será usada para detectar o pai). No entanto, se um pai for informado, a importação também pode testar se a geometria se ajusta a uma versão em buffer da geometria da localidade pai, ignorando assim a sobreposição de geometrias secundárias e bordas compartilhadas. Os países podem ser importados sem relações com os pais. Qualquer outro local deve ser registrado em pelo menos um ‘país’ como pai. Se o registro for marinho e estiver fora do polígono de um país registrado, um argumento ‘ismarine’ deve ser indicado para aceitar o relacionamento não espacial com a localidade.
Subparcelas é a única situação em que a geometria não é necessária. Se não for informado, a geometria será calculada com base na geometria da Parcela pai e com as coordenadas startx e starty da subparcela.
Certifique-se de que sua projeção geométrica seja EPSG: 4326 WGS84. Use este padrão!
Campos POST disponíveis:
nome
- o nome da localidade - obrigatório (pai + nome deve ser único no banco de dados)
adm_level
- deve ser numérico, veja aqui - obrigatório
- geometria obrigatório, pode usar:
geom
para uma representação WKT da geometria, POLYGON, MULTIPOLYGON, POINT OU LINESTRING permitido;
lat
e long
para latitude e longitude em graus decimais (use números negativos para sul/oeste).
altitude
- em metros, se for o caso.
datum
- o padrão é ‘EPSG: 4326-WGS 84’ e você é fortemente encorajado a importar apenas dados nesta projeção. Você pode informar uma projeção diferente aqui;
parent
- o id ou o nome do local pai. A API detectará o pai com base na geometria informada e o pai detectado tem prioridade se for diferente do parent informado. No entanto, apenas quando os pais são informados, a validação também testará se sua localização cai dentro de uma versão em buffer do pai informado, permitindo importar locais que têm um relacionamento pai-filho, mas suas fronteiras se sobrepõem de alguma forma (fronteiras compartilhadas ou diferenças no georreferenciamento) ;
- quando a localização é PARCELA (
adm_level = 100
), os campos opcionais são:
x
e y
para as dimensões da parcela em metros (define as coordenadas cartesianas)
startx
e starty
para a posição inicial de uma sub-parcela em relação à localização da parcela pai;
notes
- qualquer nota que você deseja adicionar à sua localidade, um texto simples ou dados em JSON;
azimuth
- aplica-se apenas para Parcelas e Transectos e quando registrados com uma geometria de tipo PONTO - o azimute será usado para construir a geometria. Para Parcelas, as coordenadas do ponto referem-se ao vértice 0,0 do polígono que será construído no sentido horário a partir do ponto informado, do azimute e a dimensão y. Para transectos, as coordenadas do ponto informado são o ponto inicial e uma linha será construída usando este azimute e a dimensão x.
ismarine
- para permitir a importação de registros de localidade que não se enquadram em nenhum registro de localidade pai, você pode adicionar ismarine=1
. Observe, no entanto, que isso permite importar locais sem validação espacial. Use somente se sua localização for realmente um local marítimo que esteja fora da fronteira de qualquer país registrado.
alternatively: you may just submit a single column named geojson
containing a Feature record, with its geometry and having as ‘properties’ at least tags name
and adm_level
(or admin_level
). See geojson.org. This is usefull, for example, to import country political boundaries (https://osm-boundaries.com/).
alternativamente: você pode apenas enviar uma única coluna chamada geojson
contendo um registro Feature, com sua geometria e tendo como ‘propriedades’ pelo menos as tags name
e adm_level
(ou admin_level
). Consulte geojson.org. Isso é útil, por exemplo, para importar as fronteiras políticas e administrativas de um país usando (https://osm-boundaries.com/).
POST Measurements
O endpoint measurements
permite importar medições.
Os seguintes campos são permitidos para importar medições
dataset = number
- o id do Conjunto de Dados onde a medição deve ser colocada obrigatório
data = AAAA-MM-DD
- a data de observação para a medição, deve ser passada como AAAA-MM-DD obrigatório
object_type = string
- ‘Individual’,‘Location’,‘Taxon’ or ‘Voucher’, ou seja, o objeto ao qual a medição pertence obrigatório
object_type = number
- o id do objeto medido, seja (individuals.id, locations.id, taxons.id, vouchers.id) obrigatório
person = números ou strings
- uma ou mais pessoas que mediram o objeto. Pode ser ‘id’, ‘abbreviation’, ‘full_name’, ’email’; se houver várias pessoas, separe os valores em sua lista com a barra vertical |
ou ;
porque vírgulas podem estar presentes nos nomes. obrigatório
trait_id = número ou string
- o id ou export_name para a variável medida. obrigatório
value = número, lista de strings
- isso dependerá do tipo de variável obrigatório, opcional para variável de tipo LINK**
link_id = number
- o id do objeto vinculado para uma variável do tipo Link obrigatório para variáveis do tipo Link DEPRECADO SUBSTITUIDO POR location
location ou location_id
- o id ou nome da Localidade de uma medição relacionada a um Taxon. Apenas Taxons podem ter um location também associado. Isso substitui a lógica do Trait de tipo Link.
bibreference = number
- o id ou bibkey de uma referência para a medição. Deve ser usado quando a medição foi tirada de uma publicação
notes
- qualquer nota que você desejar. Este é um local útil para armazenar informações relacionadas à medição. Por exemplo, ao medir 3 folhas de um voucher, você pode indicar aqui a qual folha a medição pertence, folha1, folha2, etc. permitindo vincular medidas de diferentes variáveis por este campo. Pode ser um texto simples ou dados em JSON;
duplicated
- por padrão, a API de importação evitará medições duplicadas para a mesma variável, mesmo objeto medido e mesma data. Pode importar especificando duplicado=#
, onde # é o número armazenado de registros+1. Por exemplo, se já existe um registro, deve-se informar duplicado=2
se houver dois, um terceiro pode ser armazenado utilizando duplicado=3
e assim por diante.
parent_measurement = números apenas
- o ‘id’ de outra medição com a qual a medição sendo importada tem dependência. Isso cria uma relação entre as medições. O id será validado e deve ser de uma medição pertencente ao mesmo objeto, mesma data e variável diferente. Por exemplo. a ’largura da folha’ pode estar ligada a uma medida do ‘comprimento da folha’.
POST Persons
O endpoint persons
interage com a tabela Person.
Os seguintes campos são permitidos ao importar pessoas usando a API:
full_name
- nome completo da pessoa, obrigatório
abreviação
- nome abreviado, conforme usado pela pessoa nas publicações, como coletor, etc. (se deixado em branco, uma abreviação padrão será gerada usando o atributo full_name - a abreviação deve ser única dentro de uma instalação OpenDataBio);
email
- um endereço de e-mail,
instituição
- a que instituição esta pessoa está associada;
biocollection
- nome ou acrônimo da BioColeção à qual esta pessoa está associada (se for um taxonomista, por exemplo)
POST Taxons
Use para importar novos nomes taxonômicos.
- O POST API requer APENAS o nome completo do táxon a ser importado, ou seja, para espécies ou infra-espécies, o nome completo deve ser informado, por exemplo, Ocotea guianensis ou Licaria cannela aremeniaca, sem indicação dos ranks.
- O script validará o nome, recuperando as informações necessárias restantes através de serviços de API de repositórios nomenclaturais. Ele pesquisará GBIF, Tropicos.org, Zoobank e se encontrar recuperará os dados do nome, os ids nesses repositórios e também o caminho de classificação completo até Reino. Se o esta busca indicar que o nome é um sinônimo, os nomes válidos e aceitos para o seu nome serão também detectados.E tudo isso será importando na base de dados juntamente com seu nome. Se seu nome for reconhecido com sinônimo, ele será inserido como nome
invalid
. O caminho da classificação hierárquica será importado até que um Taxon pai já registrado seja encontrado. Note, no entanto, que você pode não querer a classificação hierárquica, ou querer uma diferente. Neste caso indique level
e parent
.
- Portanto, a menos que você esteja tentando importar nomes não publicados, apenas envie o parâmetro de
name
da lista abaixo.
Campos possíveis:
name
- nome completo do táxon obrigatório, por exemplo “Ocotea floribunda” ou “Pagamea plicata glabrescens”
level
- pode ser o id numérico ou uma string que descreve o taxonRank recomendado para nomes não publicados
parent
- o nome completo ou id do pai do táxon - nota - se você informar um pai válido e o sistema detectar um pai diferente através da API aos repositórios nomenclaturais, será dada preferência ao pai informado; obrigatório para nomes não publicados
bibreference
- a referência bibliográfica em que o táxon foi publicado;
author
- o nome do autor do táxon;
author_id
ou person
- o nome da pessoa registrada, abreviatura, e-mail ou id, representando o autor de nomes não publicados - obrigatório para nomes não publicados
valid
- booleano, verdadeiro se o nome do táxon for válido; 0 ou 1
mobot
- id do Tropicos.org para este táxon
ipni
- id do IPNI para este táxon
mycobank
- id do MycoBank para este táxon
zoobank
- id do ZOOBANK para este táxon
gbif
- nubKey de GBIF para este táxon
POST Traits
Ao inserir algumas variáveis, recomendamos fortemente que você insira variáveis uma a uma usando o formulário da Interface Web, o que reduz a chance de duplicar definições de variáveis, que são objetos compartilhados com todos os usuários da base e devem ter uma definição clara.
O endpoint traits
interage com o modelo Variáveis. O método POST permite que você importe variáveis em lote para o banco de dados e é projetado para transferir Ontologias para o OpenDataBio de outros sistemas
- Conforme observado na descrição do modelo Variáveis, é importante verificar se uma Variável que você precisa já não está cadastrada e evitar a multiplicação de características redundantes. A interface no navegador facilita esse processo. Por meio da API, OpenDataBio verifica por duplicações apenas em
export_name
, que deve ser único no banco de dados. Observe, no entanto, que as Variáveis também devem ser o mais específicas possível para anotações detalhadas de metadados.
- Variáveis usam Traduções de Usuário para nomes e descrições, permitindo traduções nos idiomas disponíveis na sua instalação.
Campos permitidos para POST traits:
export_name = string
- um nome curto para a variável, que será usado durante as exportações de dados e nos formulários na interface. export_name deve ser único na base de dados e não devem ter tradução. Nomes de exportação curtos no estilo [CamelCase](https://en.wikipedia.org/wiki/Camel_case) são recomendados. Evite sinais diacríticos (acentos), caracteres especiais, pontos e até mesmo espaços em branco obrigatório
type = number
- um código numérico que especifica o tipo de Variável. Veja o modelo Variáveis para uma lista completa. obrigatório
objects = list
- uma lista dos Core objects para os quais a variável pode ser medida. Os valores possíveis são ‘Individual’, ‘Voucher’, ‘Location’ e/ou ‘Taxon’, singular e sensível a maiúsculas e minúsculas. Ex: “{‘object’: ‘Individual,Voucher’}”; obrigatório
name = json
- veja abaixo sobre traduções; obrigatório
description = json
- veja abaixo sobre traduções; obrigatório
Campos específicos para tipos de variáveis:
unit=string
- necessário apenas para características quantitativas (a unidade de medida). Deve ser um código ou um nome (em qualquer idioma) de uma unidade já armazenada no banco de dados. As unidades só podem ser definidas através da interface web.
range_min = number
- opcional para variáveis quantitativas. especifique o valor mínimo permitido para uma medição.
range_max = number
- opcional para quantitativo. valor máximo permitido para a variável.
categories = json
- obrigatório para variáveis categóricas e ordinais; veja abaixo sobre traduções
wavenumber_min
e wavenumber_max
- obrigatório para variáveis espectrais = número de onda mínimo e máximo dentro do qual os valores de absorbância ou refletância de ‘value_length’ estão igualmente distribuídos. Pode ser informado em range_min
e range_max
, prioridade para o prefixo wavenumber sobre range se ambos informados.
value_length
- obrigatório para características espectrais = número de valores no espectro
link_type
- obrigatório para características de link - a classe do tipo de link, nome completo ou nome de base: por exemplo. ‘Taxon’ ou ‘App\Models\Taxon’.
bibreference=mix
- o(s) id(s) ou bibkey(s) de uma BibReference já armazenada(s) no banco de dados. Se mais de uma, separados por ‘|’ ou ‘;’
parent
- id ou export_name de outra variável da qual a variável depende. Se você indicar uma variável aqui, isso significa que você adiciona uma RESTRIÇÃO na validação das medições. Adicionar uma Medida para a variável sendo importada DEPENDERÁ de o banco de dados possuir uma medida para a variável aqui indicada, para o mesmo objeto e mesma data. Exemplo, você cria uma característica chamada POM (ponto de medição) para registrar a altura em uma árvore onde você mede um DAP (diâmetro à altura do peito). Adicionar DAP como uma característica da qual o POM depende significa que você só pode adicionar POM se houver um valor de DAP para a mesma árvore na mesma data.
Categorias e Traduções
-
Os campos name
, description
devem ter a seguinte estrutura para incorporar Traduções do usuário. Eles devem ser uma lista com o idioma como ‘chaves’.
-
Idiomas válidos podem ser obtidos pelo Language API.
-
Por exemplo, um campo name
pode receber a seguinte informação:
- usando o código de idioma como chaves:
[
{"en": "Diâmetro na altura do peito"," pt-br": "Diâmetro a Altura do Peito"}
]
- ou usando os ids de idioma como chaves:
[
{"1":"Diâmetro à altura do peito","2":"Diâmetro a Altura do Peito"}
]
- ou usando os nomes dos idiomas como chaves:
[
{"English":"Diameter at Breast Height","Portuguese": "Diâmetro a Altura do Peito"}
]
-
Alternativamente, você pode adicionar as informaçõe como parâmetros separados. Ao invés de name
pode usar name.IDIOMA_CODIGO_ou_ID
, por exemplo name.en
ou name.1
para o nome em inglês e name.pt-br
ou name.2
para o nome em português. Da mesma forma para description
: description.en
ou description.1
, etc.
-
O campo categories
deve incluir para cada categoria + ordem + idioma os seguintes campos:
lang = mixed
- o id, código ou nome do idioma da tradução, obrigatório
name = string
- o nome da categoria no idioma obrigatório (name + rank + lang deve ser único)
rank = number
- a ordem para variáveis ordinais, semi-quantitativas; para não ordinal, o rank
também é importante, mas apenas para indicar a mesma categoria em todos os idiomas obrigatório
description = string
- opcional para categorias, uma definição da categoria.
- Exemplo para categoria:
[
{"lang":"en","rank":1,"name":"small","description":"smaller than 1 cm"},
{"lang":"pt-br","rank":1,"name":"pequeno","description":"menor que 1 cm"}
{"lang":"en","rank":1,"name":"big","description":"bigger than 10 cm"},
{"lang":"pt-br","rank":1,"name":"grande","description":"maior que 10 cm"},
]
POST Vouchers
O endpoint vouchers
interage com a tabela Vouchers. Note que vouchers
podem também ser importados diretamente através da importação de registros de indivíduos. O POST vouchers requer que informações de indivíduos já esteja cadastradas.
Os seguintes campos são permitidos na importação de dados:
individual = mixed
- o id numérico ou organismID do indivíduo ao qual o voucher pertence obrigatório;
biocollection = mixed
- o id, nome ou acrônimo de uma BioColeção registrada a que o Voucher pertence obrigatório;
biocollection_type = mixed
- o nome ou código numérico de [tipo de nomenclatural](/docs/api/quick-reference /#nomenclature-types), se for o caso. O padrão é 0, ou seja, não é um tipo nomenclatural.
biocollection_number = mixed
- o código alfanumérico do voucher na BioColeção (número de tombo ou outro código de uso local);
number = string
- o número do coletor principal - somente se diferente do valor tag do indivíduo ao qual o voucher pertence;
collector = mixed
- ids ou abreviações de pessoas. Quando vários valores são informados, o primeiro é o coletor principal. Informe apenas se for diferente da lista de coletores do Indivíduo associado.
date = AAAA-MM-DD ou array
- necessário apenas se, com coletor e número, for diferente dos valores do Indivíduo associado. A data pode ser um Modelo Incompleto.
dataset = number
- herda o Conjunto de Dados ao qual o indivíduo pertence, mas você pode fornecer um Conjunto de Dados diferente se preferir
notes = string
- qualquer anotação, um texto simples ou dados em JSON;
Campo Notes
O campo notes
de qualquer modelo é para texto simples ou um texto formatado como objeto JSON contendo dados estruturados. A opção Json permite que você armazene dados estruturados personalizados em qualquer modelo que tenha o campo notes
. Você pode, por exemplo, armazenar como notas alguns campos secundários de fontes originais ao importar dados, mas pode armazenar quaisquer dados adicionais que não sejam fornecidos pela estrutura do banco de dados do OpenDataBio. Esses dados não serão validados pelo OpenDataBio e a padronização de tags e valores depende de você. As notas Json serão importadas e exportadas como um texto JSON e serão apresentadas na interface como uma tabela formatada; URLs em seu Json serão apresentados como links nessa tabela.
4 - Atualizar dados - PUT
Como atualizar dados no OpenDataBio usando a API
Atenção
Somente os endpoints listados abaixo podem ser atualizados usando a API e somente os campos PUT listados podem ser atualizados em cada endpoint. Os valores dos campos são os mesmos como explicados para a API POST, exceto que em todos os casos o ID
do registro a ser atualizado também deve ser fornecido.
Endpoint |
Description |
PUT Fields |
individuals |
Atualizar Indivíduos |
(id or individual_id ),collector , tag , dataset , date , notes , taxon , identifier , identification_date , modifier , identification_notes , identification_based_on_biocollection , identification_based_on_biocollection_id , identification_individual |
individual-locations |
Atualizar Localidades de Indivíduos |
(id or individual_location_id ), individual , (location or latitude + longitude ), altitude , location_notes , location_date_time , x , y , distance , angle |
locations |
Atualizar Localidades |
(id or location_id ), name , adm_level , (geom or lat +long ) , parent , altitude , datum , x , y , startx , starty , notes , ismarine |
measurements |
Atualizar Medições |
(id or measurement_id ), dataset , date , object_type , object_type , person , trait_id , value , link_id , bibreference , notes , duplicated ,parent_measurement |
persons |
Atualizar Pessoas |
(id or person_id ),full_name , abbreviation , email , institution , biocollection |
vouchers |
Atualizar Vouchers |
(id or voucher_id ),individual , biocollection , biocollection_type , biocollection_number , number , collector , date , dataset , notes |