2012-05-01 16 views
7

Estoy intentando crear un nuevo objeto Case utilizando la API REST pero necesito descubrir cómo formatear el cuerpo JSON para pasar en SObjects anidados.Crear objeto Case de Salesforce con relaciones anidadas utilizando la API REST

No es evidente en los documentos, y parece que no puedo encontrar ningún ejemplo. Alguien tiene alguna sugerencia o ha hecho esto antes?

La interfaz de usuario web de SF utiliza un campo de búsqueda de texto para establecer el Contacto y la Cuenta (relacionados), y necesito descubrir cómo omitir la necesidad de buscar o insertar los SObjects de los registros relacionados en el JSON.

[{"message":"The value provided for foreign key reference Contact is not a nested SObject","errorCode":"INVALID_FIELD"}] 

Respuesta

9

Se resolvió simplemente configurando los atributos AccountId y ContactId en el nuevo objeto Case.

+1

¿Podría decirme cuál fue el URI de la API REST que utilizó para crear un nuevo caso? – Jay

3

Tampoco he visto ninguna documentación sobre esto, pero si miras los metadatos del objeto devueltos por la API REST para cualquier objeto estándar, parece que el sufijo 'Id' se anexa a cualquier campo del tipo "referencia ". Por ejemplo, Case tiene OwnerId, LastModifiedById, CreatedById, etc. Este sufijo no está presente en los nombres de campo que se muestran en la interfaz del navegador. El WSDL para la API SOAP incluye tanto el ID como un elemento simple del tipo "ID", como también un elemento secundario complejo para anidar el registro real.