Realizar una petición de búsqueda

Para realizar una petición de búsqueda, utilice un método HTTP POST con el punto de conexión de API _find, y especifique el nombre de la base de datos y la presentación, e información adicional para indicar los campos de consulta y los criterios, el tipo de ordenación, el registro inicial y el número de registros. También puede especificar información del portal para limitar el número de registros relacionados que se devuelven.

Método HTTP

POST

URL

/fmi/data/versión/databases/nombre-base-de-datos/layouts/nombre-presentación/_find

versión: la versión de FileMaker Data API solicitada puede utilizar v1, v2 o vLatest.

  • Versión 1 (v1): la estructura de los datos del portal devueltos se basa en la configuración de vista (vista Formulario o Tabla) de la presentación especificada.

    • Vista Formulario: devuelve todos los registros relacionados.

    • Vista Tabla: devuelve el primer registro relacionado.

      Nota  Al cambiar la configuración de vista, se modifica la estructura de datos del portal para el valor devuelto.

  • Versión 2 (v2): la estructura de los datos del portal devueltos se basa en la vista Formulario.

  • Última versión (vLatest): el comportamiento se basa en la última versión de la API.

nombre-base-de-datos: el nombre de la base de datos alojada.

nombre-presentación: la presentación que se utilizará como contexto de la petición de búsqueda.

Encabezado HTTP

Content-Type: application/json

Authorization: Bearer token-sesión, donde token-sesión es el valor exclusivo de X-FM-Data-Access-Token para la sesión de la base de datos.

Parámetros

Una consulta en formato JSON que especifica los campos y los criterios de búsqueda. Puede utilizar parámetros opcionales para especificar las solicitudes de omisión, el orden de clasificación, el registro inicial (offset), el número de registros (limit) y los portales para limitar el número de registros relacionados que se devuelven. Los parámetros offset, limit y ordenación funcionan en los registros que se encuentran en la tabla de la presentación y no en los registros del portal relacionados. Para limitar el número de registros y filas que se muestran en un conjunto relacionado, especifique el parámetro offset.nombre-portal y limit.nombre-portal.

Si desea obtener los datos de respuesta en el contexto de una presentación diferente, utilice el parámetro layout.response.

Por ejemplo:

Copiar
{
  "query":[
    {"Group": "=Cirujano"},
    {"Lugar de trabajo" : "Madrid", "omit" : "true"}],
  "sort":[
    {"fieldName": "Lugar de trabajo","sortOrder": "ascend"},
    {"fieldName": "Nombre", "sortOrder": "ascend"} ]
}

Ejemplo con desplazamiento, límite y portales:

Copiar
{
  "query":[
    {"Group": "=Cirujano"},
    {"Lugar de trabajo" : "Madrid", "omit" : "true"}],
  "portal": ["Portal1","Portal2"],
  "limit": "10",
  "offset": "1",
  "offset.Portal1": "1",
  "limit.Portal1": "5",
  "layout.response": "Doctores"
}

Puede ejecutar guiones de FileMaker como parte de esta solicitud. Para ello, incluya los parámetros script.prerequest, script.presort y script en el cuerpo de la solicitud. Consulte Ejecutar guiones de FileMaker.

Respuesta

Los datos de registros en formato JSON y una matriz de mensajes que muestra el código de error 0.

Por ejemplo:

Copiar
{
  "response": {
    "data": [ 
    ...  
    ]
  },
  "messages": [{"code":"0","message":"OK"}]
}

Consulte Respuestas de error.

Notas 

  • La ordenación y la devolución de registros pueden llevar mucho tiempo en completarse. Reduzca el tiempo de descarga de registros. Para ello, limite la cantidad de campos en la presentación solicitada y omita los campos que contienen comentarios.

  • No se pueden especificar campos globales como criterios de búsqueda. Si especifica un campo global con una petición de búsqueda, recibirá un mensaje de error. En su lugar, establezca el valor de campo global antes que la petición de búsqueda. Consulte Establecer valores de campos globales.