Pesquisas

Atualizada
Cover image for: Pesquisas

Um recurso de pesquisa contém informações sobre uma solicitação específica de dados. Depois que uma pesquisa é criada, ela acionará a criação de uma ou mais tarefas para concluir a solicitação.

Atributos

nome modelo Descrição
id poll ID Resource identifier.
resource string, always poll Resource type specifier.
organisation organisation ID The organisation associated with this resource.
key key ID The key associated with this resource.
user user ID The user associated with this resource.
source source ID The source the poll is targeting. This can be a child source of the session's source.
session session ID The session the poll is using.
subscription optional subscription ID The associated subscription object ID, if applicable.
tasks_pending list of task IDs The tasks associated with the poll that are awaiting processing.
tasks_processing list of task IDs The tasks associated with the poll that are being processed.
tasks_succeeded list of task IDs The tasks associated with the poll that have succeeded.
tasks_failed list of task IDs The tasks associated with the poll that have failed.
tasks_suspended list of task IDs The tasks associated with the poll that are suspended.
results list object containing result objects List of result objects generated by the poll's tasks.
errors list object containing error objects List of error objects generated by the poll's tasks.
state string One of: pending, processing, completed.
date_created datetime When the resource was created.
date_started optional datetime When processing of the poll began.
date_completed optional datetime When processing of the poll finished.

Tarefas

O papel mais importante do recurso de pesquisa é refletir o progresso de suas tarefas associadas e permitir que o usuário final comece a buscar resultados a partir deles assim que estiverem disponíveis. Portanto, o recurso de pesquisa expõe atributos relacionados à tarefa em que as tarefas associadas são categorizadas por seu estado.

Resultados

Quaisquer resultados publicados por tarefas executadas na enquete são apresentados no atributo de results da enquete. Isso permite o consumo de resultados antes que a pesquisa seja concluída.

Erros

Quaisquer erros gerados por tarefas em execução na enquete aparecerão no atributo de errors da enquete.

Estados

O estado de uma pesquisa reflete apenas se a pesquisa está aguardando a inicialização ( pending ), está em andamento ( processing ) ou se todas as tarefas terminaram a execução ( completed ).

Uma enquete não reflete nenhum estado de erro além das tarefas associadas.

Carga útil

A carga útil da pesquisa indica quais tipos de informações, tipos de dados e arquivos devem ser recuperados. O esquema do atributo de carga útil da pesquisa é descrito abaixo.

nome modelo Descrição
info_types list of info_type objects Specifies which info types should be retrieved. Supports wildcard *.
data_types list of data_type objects Specifies which data types should be retrieved.
files list of file IDs. Specifies which files to retrieve.
filters nested filters object Specifies which filters to apply to retrieved data.

Por exemplo, a carga útil da pesquisa para recuperar todos os tipos de informações em uma fonte de conta do iCloud seria:

{
  "info_types": ["*"]
}

Para recuperar uma variedade de dados de mensagens de uma fonte de backup ou Reincubate Relay do iCloud, mas apenas a partir de uma certa data:

{
  "data_types": ["ios_messages.messages", "whatsapp.messages", "viber.messages"],
  "filters": {
    "since": "2019-09-15T22:04:12Z",
    "until": "2021-06-02T12:00:00Z"
  }
}

Para recuperar dados de arquivo para imagens referenciadas em um resultado da Biblioteca de Fotos do iCloud:

{
  "files": ["icpl://xyz123", "icpl://abc321"]
}

Os diferentes atributos também podem ser usados simultaneamente:

{
  "info_types": ["*"],
  "data_types": ["ios_phone.calls"]
}

Filters

Filters allow the client to reduce the amount of data returned to only that which is likely to be of interest. For example, you might filter a poll for SMS data to only the last month of data.

name type description
since optional datetime Filter to only data that was created after this datetime.
until optional datetime Filter to only data that was created before this datetime.

Filters in subscription poll payloads

When using subscriptions to generate regular polls, any filters set in the poll payload will only be used on the initial poll of the subscription. Thereafter, the API will do the following:

  • Any value for until is ignored as to avoid simply re-polling the same interval repeatedly
  • If until was set, the next poll will fetch data from that point in time forward
  • If until was not set, the next poll will fetch data from the time of the initial poll forward (i.e. the API will poll progressively as normal)

Criar POST /polls

Crie uma pesquisa de dados em uma sessão específica.

O parâmetro source deve ser usado apenas ao direcionar uma fonte filha da fonte primária da sessão. Por exemplo, se recuperar dados de um rirelay.source o parâmetro source deve ser o ID dessa fonte.

nome modelo Descrição
key optional, key ID Optionally override the key used for this poll. This is useful when letting users trial new functionality.
source optional, source ID Optionally target a child source of the session-linked source.
session session ID The session to be used to authenticate data retrieval.
subscription subscription ID The subscription to use to perform the poll. If this is provided, source and session can be omitted.
payload nested poll payload The poll payload used to specify poll

Usando cURL

curl https://ricloud-api.reincubate.com/polls \
  -X POST \
  -H 'Authorization: Token <your key_token>' \
  -H 'Content-Type: application/json' \
  -d '{
  "session": "<session ID>",
  "payload": {
    "info_types": ["*"]
  }
}'

Usando ricloud-py

import ricloud

poll_payload = {
  'info_types': ['*'],
}

poll = ricloud.Poll.create(
  session='<session ID or ricloud.Session instance>',
  payload=poll_payload,
)

Resposta da amostra

{
  "id": "54554389-5f1a-4ccf-9bb8-024a031cf948",
  "resource": "poll",
  "organisation": 1,
  "key": 1,
  "user": 1,
  "source": 1,
  "session": "f5a7a7ef-ff21-47fe-9aa6-7ebd08123623",
  "subscription": null,
  "tasks_pending": [],
  "tasks_processing": [],
  "tasks_succeeded": [],
  "tasks_failed": [],
  "tasks_suspended": [],
  "results": {
      "data": [],
      "has_more": false,
      "total_count": 0,
      "url": "/polls/54554389-5f1a-4ccf-9bb8-024a031cf948/results"
  },
  "errors": {
    "data": [],
      "has_more": false,
      "total_count": 0,
      "url": "/polls/54554389-5f1a-4ccf-9bb8-024a031cf948/errors"
  },
  "state": "pending",
  "date_created": "2020-02-20T11:59:14.694337Z",
  "date_started": null,
  "date_completed": null
}

Recuperar GET /polls/{poll ID}

Usando cURL

curl https://ricloud-api.reincubate.com/polls/<poll ID> \
  -H 'Authorization: Token <your key_token>'

Usando ricloud-py

import ricloud

poll = ricloud.Poll.retrieve(<poll ID>)

Listar GET /polls

nome modelo Descrição
key key ID Filter by associated key. This is the key used by the user at the time.
user user ID Filter by associated user.
source source ID Filter by the target source.
session session ID Filter by the target session.
subscription subscription ID Filter by the associated subscription.
state string Filter by session state.
date_created datetime filter Filter by when the resource was created.
date_started datetime filter Filter by when the poll started.
date_completed datetime filter Filter by when the poll was finished.

Usando cURL

curl https://ricloud-api.reincubate.com/polls \
  -H 'Authorization: Token <your key_token>'

Usando ricloud-py

import ricloud

polls = ricloud.Poll.list()

Changelog

2022-07-08

  • Support for the until filter in poll payloads was added for SMS extraction. This complements the since filter to allow clients to specify an exact datetime range to retrieve data from.

05/05 2020

  • O atributo de errors foi adicionado ao objeto de pesquisa. Este é um objeto de lista aninhada que contém objetos de erro associados à pesquisa.

2020-02-20

  • Principal : O atributo de results do objeto de pesquisa agora é um objeto de lista aninhada, em vez de um simples atributo de lista. Isso possibilita a paginação dos resultados quando uma pesquisa publica um grande número de resultados.

2019-10-16

  • Adiciona o atributo de subscription ao objeto de pesquisa para indicar se a pesquisa foi acionada por uma assinatura.

01/06/2019

  • O atributo de payload objeto de pesquisa agora pode ser composto de vários tipos de operação. Isso significa que uma pesquisa pode ser criada com qualquer um ou todos info-types de info-types data-types e files na carga útil.
  • Principal O atributo type no objeto de pesquisa foi preterido em favor de cargas úteis de pesquisa composíveis.

Como podemos ajudar?

Nossa equipe de suporte está aqui para ajudar!

Nosso horário de atendimento é de segunda a sexta, das 9h às 17h GMT. A hora é atualmente 7:00 AM GMT.

Nosso objetivo é responder a todas as mensagens dentro de um dia útil.

Nossa equipe de suporte incrível

© 2008 - 2023 Reincubate Ltd. Todos os direitos reservados. Registrado na Inglaterra e no País de Gales #5189175, VAT GB151788978. Reincubate® e Camo® são marcas registradas. Política de Privacidade & termos. Construído com em Londres.