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!

questionAnswers(2)

yourAnswerToTheQuestion