Latest Threat Research:SANDWORM_MODE: Shai-Hulud-Style npm Worm Hijacks CI Workflows and Poisons AI Toolchains.Details
Socket
Book a DemoInstallSign in
Socket

adapapi

Package Overview
Dependencies
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

adapapi - npm Package Compare versions

Comparing version
0.0.9
to
0.1.0
+3
-1
adapapi.egg-info/PKG-INFO
Metadata-Version: 2.1
Name: adapapi
Version: 0.0.9
Version: 0.1.0
Summary: A simple Python package using Appen API

@@ -14,2 +14,4 @@ Author: appenps

Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Python: >=3.6, <4

@@ -16,0 +18,0 @@ Description-Content-Type: text/markdown

@@ -14,3 +14,4 @@ import requests

class Appen:
def __init__(self, api_key):
def __init__(self, api_key, eu = False):
self.eu = eu
self.api_key = api_key

@@ -31,3 +32,5 @@ self.headers={

params = {}
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}/ping.json', params=params, headers=self.headers)
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}/ping.json', params=params, headers=self.headers) if not self.eu else requests.get(f'https://api.eu.appen.com/v1/jobs/{job_id}/ping.json', params=params, headers=self.headers)
if response.status_code != 200:

@@ -63,6 +66,6 @@ log.error(f'---- Status code: {response.status_code} \n {response.text}')

if job_id == None:
response = requests.post(f'https://api.appen.com/v1/jobs/upload.json', data=payload, params=params, headers=headers)
response = requests.post(f'https://api.appen.com/v1/jobs/upload.json', data=payload, params=params, headers=headers) if not self.eu else requests.post(f'https://api.eu.appen.com/v1/jobs/upload.json', data=payload, params=params, headers=headers)
job_id = json.loads(response.text)['id']
else:
response = requests.put(f'https://api.appen.com/v1/jobs/{job_id}/upload.json', data=payload, params=params, headers=headers)
response = requests.put(f'https://api.appen.com/v1/jobs/{job_id}/upload.json', data=payload, params=params, headers=headers) if not self.eu else requests.put(f'https://api.eu.appen.com/v1/jobs/{job_id}/upload.json', data=payload, params=params, headers=headers)

@@ -75,2 +78,4 @@ if response.status_code != 200:

def split_column(self, job_id, columnname, character):

@@ -86,3 +91,3 @@ """Corresponds to the "Split Column" button in platform UI. This operation will split the contents of a column on a certain character, transforming strings into arrays of strings.

params = {'on': columnname, 'with': character}
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}/units/split', params=params, headers = self.headers)
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}/units/split', params=params, headers = self.headers) if not self.eu else requests.get(f'https://api.eu.appen.com/v1/jobs/{job_id}/units/split', params=params, headers = self.headers)
if response.status_code != 200:

@@ -92,3 +97,3 @@ log.error(f'---- Status code: {response.status_code} \n {response.text}')

log.info(json.loads(response.text))
def job_json(self, job_id):

@@ -104,3 +109,3 @@ """Get job json

params = {}
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}.json', params=params, headers = self.headers)
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}.json', params=params, headers = self.headers) if not self.eu else requests.get(f'https://api.eu.appen.com/v1/jobs/{job_id}.json', params=params, headers = self.headers)
if response.status_code != 200:

@@ -111,2 +116,21 @@ log.error(f'---- Status code: {response.status_code} \n {response.text}')

def create_job(self, job_json = None):
"""Create new job. See https://developer.appen.com/#tag/Job-CreateUpdate
Args: job_json (dict): Job JSON
"""
headers = {'content-type': 'application/json'}
headers.update(self.headers)
payload = {
'job': job_json
}
response = requests.post(f'https://api.appen.com/v1/jobs.json', data=json.dumps(payload), headers=headers) if not self.eu else requests.post(f'https://api.eu.appen.com/v1/jobs.json', data=json.dumps(payload), headers=headers)
if response.status_code != 200:
log.error(f'---- Status code: {response.status_code} \n {response.text}')
else:
log.info(json.loads(response.text))
return json.loads(response.text)['id']
def duplicate_job(self, job_id, include_uploaded_rows=False, include_tq=False):

@@ -124,7 +148,7 @@ """Duplicate ADAP job

params = {'all_units': str(include_uploaded_rows).lower(), 'gold': str(include_tq).lower()}
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}/copy.json', params=params, headers = self.headers)
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}/copy.json', params=params, headers = self.headers) if not self.eu else requests.get(f'https://api.eu.appen.com/v1/jobs/{job_id}/copy.json', params=params, headers = self.headers)
if response.status_code != 200:
log.error(f'---- Status code: {response.status_code} \n {response.text}')
else:
return json.loads(response.text)['id']
return json.loads(response.text)

@@ -142,4 +166,5 @@ def update_job_json(self, job_id, indict):

payload.update({'job': indict})
response = requests.put(f'https://api.appen.com/v1/jobs/{job_id}.json', data=json.dumps(payload), headers=headers)
payload.update({'ignore_overlapping_names': 'true'})
response = requests.put(f'https://api.appen.com/v1/jobs/{job_id}.json', data=json.dumps(payload), headers=headers) if not self.eu else requests.put(f'https://api.eu.appen.com/v1/jobs/{job_id}.json', data=json.dumps(payload), headers=headers)
if response.status_code != 200:

@@ -150,6 +175,6 @@ log.error(f'---- Status code: {response.status_code} \n {response.text}')

try:
updated_stuff = {k: read_response[k] for k, v in payload['job'].items()}
updated_stuff = [k for k, v in payload['job'].items()]
except:
updated_stuff = read_response
log.info(f'---- Status code: {response.status_code} \n---- Updated:\n{updated_stuff}')
log.info(f'---- Updated:{job_id}\n{updated_stuff}\n---- Status code: {response.status_code}')

@@ -168,3 +193,3 @@ def tag_get(self, job_id):

payload = {}
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}/tags', data=json.dumps(payload), headers=headers)
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}/tags', data=json.dumps(payload), headers=headers) if not self.eu else requests.get(f'https://api.eu.appen.com/v1/jobs/{job_id}/tags', data=json.dumps(payload), headers=headers)
if response.status_code != 200:

@@ -188,3 +213,3 @@ log.error(f'---- Status code: {response.status_code} \n {response.text}')

}
response = requests.post(f'https://api.appen.com/v1/jobs/{job_id}/tags', data=json.dumps(payload), headers=headers)
response = requests.post(f'https://api.appen.com/v1/jobs/{job_id}/tags', data=json.dumps(payload), headers=headers) if not self.eu else requests.post(f'https://api.eu.appen.com/v1/jobs/{job_id}/tags', data=json.dumps(payload), headers=headers)
if response.status_code != 200:

@@ -208,3 +233,3 @@ log.error(f'---- Status code: {response.status_code} \n {response.text}')

}
response = requests.put(f'https://api.appen.com/v1/jobs/{job_id}/tags', data=json.dumps(payload), headers=headers)
response = requests.put(f'https://api.appen.com/v1/jobs/{job_id}/tags', data=json.dumps(payload), headers=headers) if not self.eu else requests.put(f'https://api.eu.appen.com/v1/jobs/{job_id}/tags', data=json.dumps(payload), headers=headers)
if response.status_code != 200:

@@ -215,3 +240,3 @@ log.error(f'---- Status code: {response.status_code} \n {response.text}')

def get_all_jobs(self):
def get_all_jobs(self, team_id = None):
"""Retrieves list of all job IDs.

@@ -231,3 +256,5 @@ More information https://developer.appen.com/#tag/Account-Info/paths/~1jobs.json/get

}
response = requests.get(f'https://api.appen.com/v1/jobs.json', data=json.dumps(payload), headers=headers)
if team_id:
payload.update({'team_id': team_id})
response = requests.get(f'https://api.appen.com/v1/jobs.json', data=json.dumps(payload), headers=headers) if not self.eu else requests.get(f'https://api.eu.appen.com/v1/jobs.json', data=json.dumps(payload), headers=headers)
if response.status_code != 200:

@@ -264,3 +291,3 @@ log.error(f'---- Status code: {response.status_code} \n {response.text}')

}
response = requests.get(f'https://api.appen.com/v1/jobs.json', data=json.dumps(payload), headers=headers)
response = requests.get(f'https://api.appen.com/v1/jobs.json', data=json.dumps(payload), headers=headers) if not self.eu else requests.get(f'https://api.eu.appen.com/v1/jobs.json', data=json.dumps(payload), headers=headers)
if response.status_code != 200:

@@ -297,3 +324,3 @@ log.error(f'---- Status code: {response.status_code} \n {response.text}')

}
response = requests.get(f'https://api.appen.com/v1/jobs.json', data=json.dumps(payload), headers=headers)
response = requests.get(f'https://api.appen.com/v1/jobs.json', data=json.dumps(payload), headers=headers) if not self.eu else requests.get(f'https://api.eu.appen.com/v1/jobs.json', data=json.dumps(payload), headers=headers)
if response.status_code != 200:

@@ -332,3 +359,3 @@ log.error(f'---- Status code: {response.status_code} \n {response.text}')

}
response = requests.get(f'https://api.appen.com/v1/jobs.json', data=json.dumps(payload), headers=headers)
response = requests.get(f'https://api.appen.com/v1/jobs.json', data=json.dumps(payload), headers=headers) if not self.eu else requests.get(f'https://api.eu.appen.com/v1/jobs.json', data=json.dumps(payload), headers=headers)
if response.status_code != 200:

@@ -369,3 +396,3 @@ log.error(f'---- Status code: {response.status_code} \n {response.text}')

response = requests.post(f'https://api.appen.com/v1/jobs/{job_id}/regenerate', params=params, headers = self.headers)
response = requests.post(f'https://api.appen.com/v1/jobs/{job_id}/regenerate', params=params, headers = self.headers) if not self.eu else requests.post(f'https://api.eu.appen.com/v1/jobs/{job_id}/regenerate', params=params, headers = self.headers)
if response.status_code != 200:

@@ -403,3 +430,3 @@ log.error(f'---- Status code: {response.status_code} -- {response.text}')

while True:
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}.csv', params=params, headers = self.headers)
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}.csv', params=params, headers = self.headers) if not self.eu else requests.get(f'https://api.eu.appen.com/v1/jobs/{job_id}.csv', params=params, headers = self.headers)
counter += 1

@@ -411,6 +438,6 @@ log.info(f"-- Response: {response.status_code} -- Count:{counter}")

time.sleep(30)
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}.csv', params=params, headers = self.headers)
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}.csv', params=params, headers = self.headers) if not self.eu else requests.get(f'https://api.eu.appen.com/v1/jobs/{job_id}.csv', params=params, headers = self.headers)
while not response.ok:
log.error(f"Download Failed: Attempting re-download {params['type'].upper()} report {job_id}")
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}.csv', params=params, headers = self.headers)
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}.csv', params=params, headers = self.headers) if not self.eu else requests.get(f'https://api.eu.appen.com/v1/jobs/{job_id}.csv', params=params, headers = self.headers)
time.sleep(30)

@@ -475,3 +502,3 @@

while True:
response = requests.get(f'https://api.appen.com/v1/jobs/{jid}.csv', params=params, headers=self.headers)
response = requests.get(f'https://api.appen.com/v1/jobs/{jid}.csv', params=params, headers=self.headers) if not self.eu else requests.get(f'https://api.eu.appen.com/v1/jobs/{jid}.csv', params=params, headers=self.headers)
counter += 1

@@ -483,6 +510,6 @@ log.info(f"-- Response: {response.status_code} -- Count:{counter}")

time.sleep(30)
response = requests.get(f'https://api.appen.com/v1/jobs/{jid}.csv', params=params, headers=self.headers)
response = requests.get(f'https://api.appen.com/v1/jobs/{jid}.csv', params=params, headers=self.headers) if not self.eu else requests.get(f'https://api.eu.appen.com/v1/jobs/{jid}.csv', params=params, headers=self.headers)
while not response.ok:
log.error(f"Download Failed: Attempting re-download {params['type'].upper()} report {jid}")
response = requests.get(f'https://api.appen.com/v1/jobs/{jid}.csv', params=params, headers=self.headers)
response = requests.get(f'https://api.appen.com/v1/jobs/{jid}.csv', params=params, headers=self.headers) if not self.eu else requests.get(f'https://api.eu.appen.com/v1/jobs/{jid}.csv', params=params, headers=self.headers)
time.sleep(30)

@@ -544,3 +571,3 @@

payload = {'amount': bonus_chunk}
response = requests.post(f'https://api.appen.com/v1/jobs/{job_id}/workers/{worker_id}/bonus.json', data=json.dumps(payload), headers=headers)
response = requests.post(f'https://api.appen.com/v1/jobs/{job_id}/workers/{worker_id}/bonus.json', data=json.dumps(payload), headers=headers) if not self.eu else requests.post(f'https://api.eu.appen.com/v1/jobs/{job_id}/workers/{worker_id}/bonus.json', data=json.dumps(payload), headers=headers)
if response.status_code != 200:

@@ -566,3 +593,3 @@ log.error(f'---- Status code: {response.status_code} \n {response.text}')

params = {}
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}/units/{unit_id}.json', params=params, headers=headers)
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}/units/{unit_id}.json', params=params, headers=headers) if not self.eu else requests.get(f'https://api.eu.appen.com/v1/jobs/{job_id}/units/{unit_id}.json', params=params, headers=headers)
if response.status_code != 200:

@@ -604,4 +631,3 @@ log.error(f'---- Status code: {response.status_code} \n {response.text}')

try:
response = requests.get(
f'https://api.appen.com/v1/jobs/{job_id}/units/{unit_id}.json', data=json.dumps(payload), headers=headers)
response = requests.get(f'https://api.appen.com/v1/jobs/{job_id}/units/{unit_id}.json', data=json.dumps(payload), headers=headers) if not self.eu else requests.get(f'https://api.eu.appen.com/v1/jobs/{job_id}/units/{unit_id}.json', data=json.dumps(payload), headers=headers)
if response.status_code != 200:

@@ -633,3 +659,3 @@ msg = f'For unit_id {unit_id} -- Status code: {response.status_code} \n {response.text}'

response = requests.put(
f'https://api.appen.com/v1/jobs/{job_id}/units/{unit_id}.json', data=json.dumps(payload), headers=headers)
f'https://api.appen.com/v1/jobs/{job_id}/units/{unit_id}.json', data=json.dumps(payload), headers=headers) if not self.eu else requests.put(f'https://api.eu.appen.com/v1/jobs/{job_id}/units/{unit_id}.json', data=json.dumps(payload), headers=headers)
if response.status_code != 200:

@@ -652,3 +678,3 @@ log.error(f'-- Unit ID {unit_id} -- Status code: {response.status_code} -- {response.text}')

}
response = requests.delete(f'https://api.appen.com/v1/jobs/{job_id}/units/{unit_id}.json', data=json.dumps(payload), headers=headers)
response = requests.delete(f'https://api.appen.com/v1/jobs/{job_id}/units/{unit_id}.json', data=json.dumps(payload), headers=headers) if not self.eu else requests.delete(f'https://api.eu.appen.com/v1/jobs/{job_id}/units/{unit_id}.json', data=json.dumps(payload), headers=headers)
if response.status_code != 200:

@@ -668,3 +694,3 @@ log.error(f'-- Unit ID {unit_id} -- Status code: {response.status_code} \n {response.text}')

params = {}
response = requests.delete(f'https://api.appen.com/v1/jobs/{job_id}.json', params=params, headers=headers)
response = requests.delete(f'https://api.appen.com/v1/jobs/{job_id}.json', params=params, headers=headers) if not self.eu else requests.delete(f'https://api.eu.appen.com/v1/jobs/{job_id}.json', params=params, headers=headers)
if response.status_code != 200:

@@ -679,3 +705,2 @@ log.error(f'---- Status code: {response.status_code} \n {response.text}')

"""Launching job internally
Args:

@@ -697,8 +722,8 @@ job_id (int): ADAP Job ID

}
response = requests.post(f'https://api.appen.com/v1/jobs/{job_id}/orders.json', data=json.dumps(payload), headers=headers)
response = requests.post(f'https://api.appen.com/v1/jobs/{job_id}/orders.json', data=json.dumps(payload), headers=headers) if not self.eu else requests.post(f'https://api.eu.appen.com/v1/jobs/{job_id}/orders.json', data=json.dumps(payload), headers=headers)
if response.status_code != 200:
log.error(f'---- Status code: {response.status_code}\n{response.text}')
log.error(f'{job_id}---- Status code: {response.status_code}\n{response.text}')
else:
response_text = json.loads(response.text)
log.info(f'---- Status code: {response.status_code} \n {response_text}')
log.info(f'{job_id}---- Status code: {response.status_code} \n {response_text}')
return response_text['nuggeted_units_count']
Metadata-Version: 2.1
Name: adapapi
Version: 0.0.9
Version: 0.1.0
Summary: A simple Python package using Appen API

@@ -14,2 +14,4 @@ Author: appenps

Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Python: >=3.6, <4

@@ -16,0 +18,0 @@ Description-Content-Type: text/markdown

@@ -9,3 +9,3 @@ from setuptools import setup, find_packages

name='adapapi',
version='0.0.9',
version='0.1.0',
description='A simple Python package using Appen API',

@@ -24,2 +24,4 @@ long_description=long_description,

'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3.10',
'Programming Language :: Python :: 3.11',
],

@@ -26,0 +28,0 @@ packages=find_packages(),