quickbook online developer api oauth coldfusion quickbooks reconnect

online - Problema de reconexión de la API de Quickbooks



quickbook online developer (3)

He estado implementando la conectividad a QuickBooks a través de la API v3 con ColdFusion, y tengo todo funcionando, excepto la reconexión ( https://appcenter.intuit.com/api/v1/connection/reconnect ). Puedo obtener información del cliente, crear / actualizar facturas, etc., pero no tuve suerte con la reconexión.

Desde mi aplicación obtengo un código de error 22 (se requiere autenticación), pero estoy enviando el mismo encabezado de autenticación que envío para cualquiera de las otras llamadas a la API para acceder a un recurso protegido. La especificación oauth no tiene específicamente una acción de "reconexión", entonces mi pregunta es ¿qué propiedades específicas deben incluirse en el encabezado de autenticación para la llamada de reconexión de Quickbooks?

Desde la especificación de oauth 1.0, ¿son los encabezados de las Fichas de consumo un token de acceso ?
oauth_consumer_key
oauth_token
oauth_signature_method
oauth_signature
oauth_timestamp
oauth_nonce
oauth_version
oauth_verifier

¿O es el encabezado enviado para acceder a un recurso protegido?
oauth_consumer_key
oauth_token
oauth_signature_method
oauth_signature:
oauth_timestamp
oauth_nonce
oauth_version

¿O es algún otro conjunto de encabezado?

Además, he intentado usar Dev Playgorund para probar la reconexión, y de allí obtengo un
24 - Token de aplicación inválido

Entonces estoy perdido en este punto. Por lo que vale, desconexión funciona bien :)

Cualquier ayuda, guía, sugerencias serían apreciadas.

Gracias



El primer problema si estás haciendo las cosas en el orden que especifiques es que primero no puedes desconectarte y luego volver a conectarte. La API de reconexión debe invocarse con un token de acceso válido, ya que el token de acceso actual se invalidará y se emitirá un nuevo token de acceso.

En segundo lugar, hay una ventana para llamar a esta API para actualizar la vida de 6 meses del token de acceso, debe ser llamada en los últimos 30 días. Esto permite que su aplicación actualice el token sin preguntar al cliente nuevamente.

Sin embargo, en todos los casos, si se desconecta o si el cliente se desconecta manualmente, no puede llamar a la API de reconexión. Debe llevarlos de nuevo a través del flujo autorizado.

Espero que ayude
Jarred


Para probar la reconexión desde el área de juegos del desarrollador, realice los siguientes pasos: 1. Navegue hasta el área de juegos de IPP, vaya a Administrar mis aplicaciones, haga clic en su aplicación.

Complete la clave del consumidor y el secreto del consumidor en los enlaces a continuación.

Prod: https://appcenter.intuit.com/Playground/OAuth/IA/?ck= <> & cs = <> Etapa: https://appcenter-stage.intuit.com/Playground/OAuth/IA/?ck= <> & cs = <>

Alternativamente, puede navegar hasta la página Administrar para su aplicación en el escenario o prod y hacer clic en ''Probar conectarse a la aplicación (OAuth)''. Captura de pantalla adjunta. 2. Ingrese la duración que desea para los tokens de OAuth emitidos (por ejemplo, 3600 para la Reconexión exitosa) en el campo ''Duración del token de acceso''. Captura de pantalla adjunta. 3. Haga clic en el botón Conectarse a QuickBooks, vaya a OAuth flow para autorizar una conexión a un reino. 4. Bajo el encabezado resultante de Interacciones posteriores a la conexión, haga clic en ''Volver a conectar la prueba API''. Captura de pantalla adjunta. 5. Se abrirá una nueva página donde se muestran sus tokens de OAuth. Copie estos valores a su aplicación para probar Reconexión

Como Jarred mencionó que para las aplicaciones dev / live, hay una ventana para llamar a esta API para actualizar los 6 meses de vida del token de acceso, se debe llamar en los últimos 30 días.


Recibí este error también. El código de error 22 (autenticación requerida) para mí significaba que la firma de OAuth era incorrecta. Esto fue confuso porque no pude encontrar este error enumerado en los documentos de Quickbooks para volver a conectar.

Estaba firmando la solicitud como una solicitud "POST" en lugar de una solicitud "OBTENER", que es lo que Quickbooks requiere para las llamadas al punto final de reconexión.