python mit Quickbooks Online API v3

Ich benötige Hilfe beim Implementieren einer Python-App, die auf die Quickbooks-API zugreift. Ich habe erfolgreich mehrere Apps geschrieben, die APIs verwenden, aber sobald wir in die OAuth-Welt eintreten, verliere ich mich ein bisschen.

Jedenfalls habe ich hier den Quickbooks-Python-Wrapper gefunden:https: //github.com/troolee/quickbooks-pytho

, aber es gibt keine Beispiele für Arbeitscode, die die ordnungsgemäße Implementierung veranschaulichen. Ich stelle mir vor, dass ein erfahrener Python-Programmierer ohne Anleitung herausfinden könnte, wie man das macht, aber mir fehlen anscheinend die Grundlagen.

Wenn ich es in Verbindung bringen könnte, könnte ich es wahrscheinlich von dort aus zum Laufen bringen ...

Es scheint, als würde die Dokumentation zu Github herumspringen und für einen erfahreneren Programmierer wäre dies wahrscheinlich vollkommen sinnvoll. Aber ich verfolge nur nicht ...

from quickbooks import *

consumerKey =           "fromApiConsole"
consumerSecret =        "fromApiConsole"
callbackUrl =           "https://quickbooks.api.intuit.com/v3"

qbObject = QuickBooks(
        consumer_key = consumerKey,
        consumer_secret = consumerSecret,
        callback_url = callbackUrl
        )

authorize_url = qbObject.get_authorize_url() # will create a service, and further set up the qbObject.

oauth_token = request.GET['oauth_token']
oauth_verifier = request.GET['oauth_verifier']
realm_id = request.GET['realmId']

session = qbObject.get_access_tokens(oauth_verifier)

# say you want access to the reports

reportType = "ProfitAndLoss"

url = "https://quickbooks.api.intuit.com/v3/company/asdfasdfas/"
url += "reports/%s" % reportType

r = session.request( #This is just a Rauth request
    "POST",
    url,
    header_auth = True,
    realm = realm_id,
    params={"format":"json"}
    )

qb = QuickBooks(
    consumer_key = consumerKey,
    consumer_secret = consumerSecret,
    access_token = qbtoken.access_token, # the stored token
    access_token_secret = qbtoken.access_token_secret, # the stored secret
    company_id = qbtoken.realm_id #the stored realm_id
    )

qbText = str(qb.query_objects(business_object, params, query_tail))

print qbText

Ich bin mir ziemlich sicher, dass ich bin:

Import der falschen Module / Klassenassen Sie große Teile des Codes weg, um die auf github @ gefundenen Beispiele "zusammenzukleben"nicht mit Django hier und ich weiß, die Anfrage Klasse oben ist in Django, aber ich möchte wirklich nur diese Arbeit als Python-Skript ohne Django machendas Token / den Bezeichner / die Realm-ID nicht von der anfänglichen authorize_url-Funktion erhalten. es wird auf dem Bildschirm gedruckt, aber ich bin mir nicht sicher, wie ich es aufnehmen soll ...

Das Endziel hier ist wirklich nur, eine Gewinn- und Verlustrechnung von Quickbooks Online zu erhalten. Wenn ich so weit komme, bin ich sicher, dass ich den Rest von dem, was ich brauche, aus der API herausholen kann. Ich muss nichts wirklich ÄNDERN, sondern möchte nur Daten aus den Berichten in einige Dashboards aufnehmen.

* UPDATE *

okay, ich habe herausgefunden, wie ich es zum Verbinden bringe, aber ich bin nicht sicher, wie ich zu den Berichten komme.

die Antwort war diese, die auf der vorherigen API-Seite war:

Accessing the API
Once you've gotten a hold of your QuickBooks access tokens, you can create a QB object:

qb = QuickBooks(consumer_key = QB_OAUTH_CONSUMER_KEY, 
        consumer_secret = QB_OAUTH_CONSUMER_SECRET,
        access_token = QB_ACCESS_TOKEN, 
        access_token_secret = QB_ACCESS_TOKEN_SECRET,
        company_id = QB_REALM_ID
        )

noch versuchen, die grundlegenden Berichte zu bekommen ...

Antworten auf die Frage(4)

Ihre Antwort auf die Frage