aboutsummaryrefslogtreecommitdiff
path: root/graphql_requests.py
blob: f802cddbde26a4691193618fd88bed56fba0a3ad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import requests
import sys
from config import config

def handle_errors(r):
    error = False
    if r.status_code != 200:
        error = True
        print("Error status code: %s" % r.status_code)
    json = r.json()
    if "errors" in json:
        error = True
        for e in json["errors"]:
            print(e["message"])
    if error:
        sys.exit(1)


def get_headers():
    return { "Authorization": "Bearer %s" % config["wiki"]["key"] } 

def escape_query(query):
    return query.replace('"', '\"')

def send_query(query):
    '''Returns status code, json'''
    payload = { "query": query }
    r = requests.post(config["wiki"]["url"], json=payload, headers = get_headers())
    handle_errors(r)
    return r.json()