Erro do Salesforce - "ID de referência cruzada inválido"
Estou desenvolvendo um aplicativo Rails usando OmniAuth, OmniAuth-salesforce e esta jóia:https: //github.com/heroku/databasedotco
Estou codificando o "client_id" e o "client_secret" no meu aplicativo. Então, para cada usuário que se autentica no Saleforce, estou capturando o token oauth, o ID do usuário e o URL da instância. Com tudo isso, estou criando leads em nome dele
Tudo funciona se o usuário for da mesma conta em que obtive o "client_id" e o "client_secret". No entanto, se eu me autenticar com um usuário de outra instância do Salesforce, recebo o erro "ID de referência cruzada inválido".
Quero que meu aplicativo envie leads para usuários de várias intenções diferentes do Salesforce. Isso não é possível?
Aqui está meu código completo:
client = Databasedotcom::Client.new :client_id => SALESFORCE_CLIENT_ID, :client_secret => SALESFORCE_CLIENT_SECRET
client.authenticate :token => user.salesforce_token, :instance_url => user.salesforce_instance_url
client.materialize("Lead")
lead = Lead.new(:FirstName => first_name, :LastName => last_name, :Email => email,
:Phone => phone, :OwnerId => user.salesforce_id, :IsConverted => false,
:IsUnreadByOwner => true, :Company => contact_company)
lead.save
Obrigado por qualquer conselho!