Ir al contenido

Salesforce - Leer registro

↩ Parte de la integración Salesforce.

Lee un único registro por su id (GET /sobjects/{sobject}/{id}).

Cuando ya tenés el id, esto es más rápido y más simple que una consulta SOQL. Dejá la lista de campos vacía para traer todos los que el usuario puede ver, o nombrá los que realmente necesitás para achicar el payload.

CampoTipoObligatorioDescripción
credentials_idcredentialsSíCredencial de Salesforce
sobjecttextSíNombre de API del objeto: Account, Contact, Lead…
record_idtextSíId del registro (15 o 18 caracteres)
fieldstextNoCampos a devolver, separados por coma (ej. Name,Email). Vacío = todos

Todos los campos aceptan variables dinámicas, así que record_id suele ser {{data.id}} de un nodo anterior. Los espacios en fields se eliminan solos, así que Name, Email y Name,Email se comportan igual.

Este módulo necesita una credencial de Salesforce:

CampoDescripción
login_urlhttps://login.salesforce.com o https://test.salesforce.com para una sandbox
client_id / client_secretConsumer Key y Secret de la Connected App
usernameUsuario de Salesforce
passwordContraseña más el security token, concatenados

data es el registro tal como lo devuelve Salesforce, incluido el bloque attributes:

{
"attributes": {
"type": "Account",
"url": "/services/data/v59.0/sobjects/Account/0015g00000AbCdEFGH"
},
"Id": "0015g00000AbCdEFGH",
"Name": "ACME S.A.",
"Phone": "+34600111222",
"Industry": "Manufacturing"
}

Junto con él, _meta:

{ "moduleVersion": "1.0.0", "success": true, "id": "0015g00000AbCdEFGH", "totalMs": 210 }
{
"credentials_id": "salesforce_prod",
"sobject": "Account",
"record_id": "{{data.accountId}}"
}
{
"credentials_id": "salesforce_prod",
"sobject": "Contact",
"record_id": "{{data.contactId}}",
"fields": "FirstName,LastName,Email,Phone,AccountId"
}
{
"credentials_id": "salesforce_prod",
"sobject": "Opportunity",
"record_id": "{{data.opportunityId}}",
"fields": "Name,StageName,Amount,CloseDate"
}
  • La lista de fields usa nombres de API; uno desconocido devuelve 400 INVALID_FIELD en lugar de ignorarse.
  • Con fields vacío, Salesforce devuelve todos los campos a los que el usuario tiene acceso, lo que en objetos estándar puede ser un payload muy grande.
  • Los ids de 15 caracteres distinguen mayúsculas; los de 18 no. Los dos se aceptan.
  • Un 404 significa que el id no existe para ese sObject, o que el usuario no puede verlo. Ese error no se reintenta.
  • Si sobject o record_id se resuelven a un valor vacío, el nodo se detiene con un error de validación antes de llamar a Salesforce.
  • Para leer varios registros de una vez, o para buscar por algo que no sea el id, usá Consulta SOQL.