Actualizar registros

Actualiza los detalles de varios registros en una aplicación, especificando sus números de registro o sus claves únicas.

MétodoPUT
URLhttps://{subdomain}.kintone.com/k/v1/records.json
URL (espacio de invitado)https://{subdomain}.kintone.com/k/guest/{SpaceID}/v1/records.json
Autenticación Autenticación de contraseña, Autenticación de token de API, Autenticación de sesión
Content-Typeapplication/json

Contenido

Permisos

  • Se necesita permiso para actualizar los registros en la aplicación.
  • Se necesita permiso para actualizar los campos que se incluyen en los parámetros de solicitud.

Parámetros de solicitud

PARÁMETRO VALOR OBLIGATORIO DESCRIPCIÓN
app Entero o cadena El identificador de la aplicación.
records Matriz de objetos Contiene una matriz de objetos que incluyen: id/updateKey, revision y grabar Objetos.
records[].id Entero o cadena Condicionalmente requerido El identificador de registro del registro que se va a actualizar. Obligatorio, si updateKey no se especificará.
records[].updateKey Objeto Condicionalmente requerido La clave única del registro que se va a actualizar. Obligatorio, si identificación no se especificará. Para especificar este campo, el campo debe tener activada la opción "Prohibir valores duplicados".
records[].updateKey.field Cuerda Condicionalmente requerido El código de campo de la clave única. Obligatorio, si updateKey se especificará.
records[].updateKey.value Entero o cadena Condicionalmente requerido El valor de la clave única. Obligatorio, si updateKey se especificará.
records[].revision Entero o cadena Opcional El número de revisión esperado. Si el valor no coincide, se producirá un error y no se actualizarán todos los registros. Si el valor no se especifica o es -1, no se comprobará el número de revisión.
records[].record Objeto Opcional Los códigos de campo y los valores se especifican en este objeto. Si se ignora, el registro no se actualizará. Para obtener más información sobre los tipos de campo, consulte el siguiente artículo:
Tipos de campo

Solicitud de muestra (id)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
var body = {
  'app': 1,
  'records': [
    {
      'id': 1,
      'record': {
        'Text': {
          'value': 'Silver plates'
        }
      }
    },
    {
      'id': 2,
      'record': {
        'Text': {
          'value': 'The quick brown fox.'
        }
      }
    }
  ]
};

kintone.api(kintone.api.url('/k/v1/records.json', true), 'PUT', body, function(resp) {
  // success
  console.log(resp);
}, function(error) {
  // error
  console.log(error);
});

Muestra de curl

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
$ curl -X PUT 'https://{subdomain}.kintone.com/k/v1/records.json' \
-H 'X-Cybozu-API-Token: {APIToken}' \
-H 'Content-Type: application/json' \
-d '{
    "app": 1,
    "records": [
        {
            "id": 1,
            "record": {
                "Text": {
                    "value": "Silver plates"
                }
            }
        },
        {
            "id": 2,
            "record": {
                "Text": {
                    "value": "The quick brown fox."
                }
            }
        }
    ]
}'

Solicitud de ejemplo (updateKey)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
var body = {
  'app': 1,
  'records': [
    {
      'updateKey': {
        'field': 'unique_key',
        'value': 'unique_code'
      },
      'record': {
        'Text': {
          'value': 'Silver plates'
        }
      }
    },
    {
      'updateKey': {
        'field': 'unique_key',
        'value': 'unique_code2'
      },
      'record': {
        'Text': {
          'value': 'The quick brown fox.'
        }
      }
    }
  ]
};

kintone.api(kintone.api.url('/k/v1/records.json', true), 'PUT', body, function(resp) {
  // success
  console.log(resp);
}, function(error) {
  // error
  console.log(error);
});

Muestra de curl

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
$ curl -X PUT 'https://{subdomain}.kintone.com/k/v1/records.json' \
-H 'X-Cybozu-API-Token: {APIToken}' \
-H 'Content-Type: application/json' \
-d '{
    "app": 1,
    "records": [
        {
            "updateKey": {
                "field": "unique_key",
                "value": "CODE123"
            },
            "record": {
                "Text": {
                    "value": "Silver plates"
                }
            }
        },
        {
            "updateKey": {
                "field": "unique_key",
                "value": "CODE456"
            },
            "record": {
                "Text": {
                    "value": "The quick brown fox."
                }
            }
        }
    ]
}'

Parámetros de respuesta

Parámetro Tipo Descripción
ids Matriz de cadena Los ID de registro del registro creado.
revisions Matriz de cadena Los números de revisión del Registro.

Ejemplo de respuesta

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
{
  "records": [
    {
      // First data
      "id": "1",
      "revision": "5"
    },
    {
      // Second data
      "id": "2",
      "revision": "2"
    }
  ]
}

Campos adjuntos y tablas

Actualización y eliminación de archivos en campos adjuntos

Si desea agregar un nuevo archivo a un campo de datos adjuntos que ya tiene varios archivos adjuntos, deberá especificar las claves de archivo de esos archivos en la solicitud. No se puede actualizar un archivo adjunto específico.
Si no se especifica una clave de archivo en la solicitud, se eliminarán los archivos.

Actualización de tablas

Si los datos de las tablas no se incluyen en la solicitud, los datos de la tabla permanecerán como están.
Si se incluyen datos de tabla en la solicitud, tenga en cuenta lo siguiente:

  • Se eliminarán todos los campos dentro de la tabla que no estén incluidos en la solicitud.
  • Para mantener datos específicos de los campos en la tabla, el valor de ese campo debe incluirse en la solicitud.
  • Al especificar el identificador de una fila de tabla (el identificador se puede recuperar mediante la API Get Record), se pueden actualizar filas y campos específicos. Para obtener más información, consulte el siguiente artículo:
    Obtener registro
  • Si se especifica un identificador de fila de tabla que no existe, la fila se agregará como una nueva fila. En este caso, se eliminarán las filas que existen en la tabla pero que no se especificaron en la API.

Limitaciones

  • El número máximo de registros que se pueden actualizar es de 100.
  • Si hay campos con la opción "Campo obligatorio" activada y esos campos no contienen valores (lo que podría ocurrir en los casos en que el formulario de la aplicación se actualizó después de que se agregaron algunos registros a la aplicación), esos campos deben incluirse en la solicitud.
  • Si se produce un error en la API de actualización de registros, se cancelarán todas las actualizaciones y no se actualizará ningún registro.
  • Los siguientes campos no se pueden actualizar:
    • Los destinos de asignaciones de campos del campo Búsqueda
    • Estado
    • Categorías
    • Calculado
    • Cesionario
    • Número de registro
    • Creado por
    • Fecha y hora creada
    • Actualizado por
    • Fecha y hora actualizada
  • Si se especifican campos que no existen dentro de la aplicación en las solicitudes, estos campos se ignorarán.
  • Si los campos calculados son valores especificados en la solicitud, estos valores se omitirán.
  • Si los campos de texto con la opción "Calcular automáticamente" son valores especificados en la solicitud, estos valores se ignorarán.
  • Los campos especificados como updateKey no se puede actualizar.
  • Para conocer otras limitaciones, consulte la sección Limitaciones en el siguiente artículo:
    Descripción general de la API REST de Kintone