Routers package.
All communication with oDesk API is handled by the routers.
When you import odesk package and instantiate odesk.Client class, routers are dynamically attatched to your client object.
Bases: odesk.namespaces.GdsNamespace
Generate Billing Reports for a Specific Buyer’s Company. The authenticated user must be the company owner.
buyer_company_id: | |
---|---|
Buyer’s Company ID | |
query: | The GDS query string |
Generate Earning Reports for a Specific Buyer’s Company.
buyer_company_id: | |
---|---|
Buyer’s Team ID | |
query: | The GDS query string |
Generate Billing Reports for a Specific Buyer’s Team. The authenticated user must be an admin or a staffing manager of the team.
buyer_team_id: | Buyer’s Team ID |
---|---|
query: | The GDS query string |
Generate Earning Reports for a Specific Buyer’s Team.
buyer_team_id: | Buyer’s Team ID |
---|---|
query: | The GDS query string |
Generate Financial Reports for a Specific Account.
accounting_id: | ID of an Accounting entity |
---|---|
query: | The GDS query string |
Generate Financial Reports for an owned Account.
provider_id: | Provider ID |
---|---|
query: | The GDS query string |
Generate Billing Reports for a Specific Provider.
provider_id: | Provider ID |
---|---|
query: | The GDS query string |
Generate Billing Reports for a Specific Provider’s Company. The authenticated user must be the company owner
provider_company_id: | |
---|---|
Provider’s Company ID | |
query: | The GDS query string |
Generate Earning Reports for a Specific Provider’s Company.
provider_company_id: | |
---|---|
Provider’s Team ID | |
query: | The GDS query string |
Generate Earning Reports for a Specific Provider
provider_id: | Provider ID |
---|---|
query: | The GDS query string |
Generate Billing Reports for a Specific Provider’s Team. The authenticated user must be an admin or a staffing manager of the team.
provider_team_id: | |
---|---|
Provider’s Team ID | |
query: | The GDS query string |
Generate Earning Reports for a Specific Provider’s Team.
provider_team_id: | |
---|---|
Provider’s Team ID | |
query: | The GDS query string |
Bases: odesk.namespaces.Namespace
HR API version 2
userrole api
Delete a job.
job_id: | Job reference ID |
---|---|
reason_code: | The reason code to cancel the job, e.g. 41. Possible values are:
|
Close the referenced contract.
contract_reference: | |
---|---|
The Contract’s reference ID |
|
reason: | The reason key, e.g. ‘API_REAS_HIRED_DIFFERENT’. Possible values are:
|
would_hire_again: | |
Whether you would hire a contractor again. Required if total charge on the contract is $0. Possible values are: [‘yes’, ‘no’] |
|
fb_scores: | (optional) Estimate, a dictionary of scores, where id is reference to score description (see example below). The feedback scores are optional, but if present they must be complete: all scores. Below are the possible score reference id values. Feedback on contractor:
|
fb_comment: | (optional) Feedback comment, some string message. It is optional but if present, then the fb_scores parameter is also required. |
Retrieve the list of companies to which the current authorized user has access.
Retrieve the company object from the company reference.
company_reference: | |
---|---|
The company reference (can be found using get_companies method) |
Retrieve a list of teams within the company being referenced.
User has to have access to the referenced company.
company_reference: | |
---|---|
The company reference (can be found using get_companies method) |
Retrieve a list of all users within the referenced company.
Only available for users with hiring privileges for the company.
company_reference: | |
---|---|
The company reference (can be found using get_companies method) | |
active: | True/False (default True) |
Retrieve referenced engagement object.
engagement_reference: | |
---|---|
Engagement reference ID |
Retrieve engagements.
buyer_team_reference: | |
---|---|
(optional) The team reference ID |
|
include_sub_teams: | |
(optional) <0|1> - whether to include info about sub-teams |
|
provider_reference: | |
(optional) The provider’s reference ID. Has the override priority over the profile_key if both specified. |
|
profile_key: | (optional) Unique profile key, used if provider_reference is absent |
job_reference: | (optional) The Job’s reference ID |
agency_team_reference: | |
(optional) The Agency’s reference ID |
|
status: | (optional) Engagement status, e.g. status=active;closed |
created_time_from: | |
(optional) timestamp e.g.‘2008-09-09 00:00:01’ |
|
created_time_to: | |
(optional) timestamp e.g.‘2008-09-09 00:00:01’ |
|
page_offset: | (optional) Number of entries to skip |
page_size: | (optional: default 20) Page size in number of entries |
order_by: | (optional) Sorting, in format $field_name1;$field_name2;..$field_nameN;AD...A, where A means “Ascending”, D means “Descending”, available fields are:
|
Retrieve the complete job object for the referenced job. This is only available to users with manage_recruiting permissions within the team that the job is posted in.
job_reference: | Job reference |
---|
Retrieves all jobs that a user has manage_recruiting access to. This API call can be used to find the reference ID of a specific job.
buyer_team_reference: | |
---|---|
The buyer’s team reference ID | |
include_sub_teams: | |
(optional) <1|0> Whether to include sub-teams | |
status: | (optional) Status of a job |
created_by: | (optional) Creator’s user_id |
created_time_from: | |
(optional) timestamp, e.g. 2009-01-20T00:00:01 | |
created_time_to: | |
(optional) timestamp, e.g. 2009-02-20T11:59:59 | |
page_offset: | (optional) Number of entries to skip |
page_size: | (optional: default 20) Page size in number of entries |
order_by: | (optional) |
Retrieve the referenced offer.
offer_reference: | |
---|---|
Offer reference ID |
Retrieve a list of all the offers on a specific job or within a specific team.
buyer_team_reference: | |
---|---|
The buyer’s team reference ID | |
include_sub_teams: | |
(optional) <1|0> Whether to include sub teams | |
provider_ref: | (optional) The provider’s reference ID |
profile_key: | (optional) Unique profile key, used if provider_reference is absent |
job_ref: | (optional) The Job’s reference ID |
agency_ref: | (optional) The Agency’s reference ID |
status: | (optional) Engagement status, e.g., status=active;closed |
created_time_from: | |
(optional) timestamp e.g.‘2008-09-09 00:00:01’ | |
created_time_to: | |
(optional) timestamp e.g.‘2008-09-09 00:00:01’ | |
page_offset: | (optional) Number of entries to skip |
page_size: | (optional: default 20) Page size in number of entries |
order_by: | (optional) Sorting |
Retrieve the team information.
team_reference: | The team reference |
---|---|
include_users: | Whether to include details of users (default: False) |
Retrieve users of the team.
team_reference: | The team reference |
---|---|
active: | Status of the users, If True - return active users, if False - return inactive users. Default value is True. |
Retrieve a list of all the teams that a user has access to.
This will return teams across all companies the current user has access to.
Retrieve the user object from the user reference.
user_reference: | The user reference |
---|
Retrieve currently authenticated user object.
Retrieve UserRoles object.
This is a very important and useful API call, it returns a complete list of privileges the currently authorized user has within all the teams and companies they have access to.
Post a job.
buyer_team_reference: | |
---|---|
Reference ID of the buyer team that is posting the job, e.g. 34567 |
|
title: | Title of the Job |
job_type: | Type of posted job, e.g. “hourly” Possible values are:
|
description: | The job’s description |
visibility: | The job’s visibility, e.g. ‘private’. Possible values are:
|
category: | (conditionally optional) The category of job, e.g. ‘Web Development’ (where to get? - see Metadata API) |
subcategory: | (conditionally optional) The subcategory of job, e.g. ‘Web Programming’ (where to get? - see Metadata API) |
budget: | (conditionally optional) The budget of the Job, e.g. 100. Is used for ‘fixed-price’ jobs only. |
duration: | (conditionally optional) The duration of the job in hours, e.g. 90. Used for ‘hourly-jobs’ only. |
start_date: | (optional) The start date of the Job, e.g. 06-15-2011. If start_date is not included the job will default to starting immediately. |
skills: | (optional) Skills required for the job. Must be a list or tuple even of one item, e.g. ['python'] |
subcategory2: | (conditionally optional) The subcategory (V2) of job, e.g. ‘Web & Mobile Programming’ (where to get? - see Metadata API, List Categories (V2)) |
Make an offer to the provider.
job_reference: | The Job’s reference ID |
---|---|
provider_team_reference: | |
(optional) The reference ID of the provider team. If specified, the check is performed whether user you’re making offer to belongs to the team | |
provider_reference: | |
(conditionally optional) The provider’s reference. Has the override priority over profile_key if both specified. | |
profile_key: | (conditionally optional) Unique profile key, used if provider_reference is absent |
message_from_buyer: | |
(optional) Text message | |
engagement_title: | |
(optional) The engagement title | |
attached_doc: | (optional) Attachment |
fixed_charge_amount_agreed: | |
(optional) The amount of agreed charge, required by fixed-price job | |
fixed_pay_amount_agreed: | |
(optional) The amount of agreed pay | |
fixed_price_upfront_payment: | |
(optional) The amount of upfront payment | |
hourly_pay_rate: | |
(optional) Hourly pay rate | |
weekly_salary_charge_amount: | |
(optional) Salary charge amount per week | |
weekly_salary_pay_amount: | |
(optional) Salary pay amount per week, required by fixed-price job | |
weekly_stipend_hours: | |
(optional) Stipend hours per week | |
weekly_hours_limit: | |
(optional) Limit of hours per week | |
start_date: | (optional) The offer start date |
keep_open: | (optional, default: ‘no’) Leave the job opened. Possible values are: ‘yes’, ‘no’ |
When just job and provider reference params are provided in the request then an invitation for an interview should be send to the according provider. Provider can either choose to accept the invitation and start the communication with the user or decline it, in which case communication between client and provider stops.
When additionally engagement title and charge amount params are provided in the request, then an actual offer is created for the provider. In this case the provider can either accept the offer and start working or decline the offer.
Add bonus to an engagement.
team_reference: | The Team reference ID |
---|---|
engagement_reference: | |
The Engagement reference ID | |
comments: | Comments about this adjustment, e.g. “Bonus for a good job” |
charge_amount: | The amount that will be charged to the employer, e.g. 110 |
notes: | (optional) Notes |
Note
You should use either amount parameter or charge_amount, but not both. Make sure that at least one of them is present.
Restart the Contract.
contract_reference: | |
---|---|
The Contract’s reference ID | |
message: | A message/reason for contractor |
Suspend the Contract.
contract_reference: | |
---|---|
The Contract’s reference ID | |
message: | A message/reason for contractor |
Update a job.
job_id: | Job reference ID |
---|---|
buyer_team_reference: | |
Reference ID of the buyer team that is posting the job, e.g. 34567 |
|
title: | Title of the Job |
description: | The job’s description |
visibility: | The job’s visibility, e.g. ‘private’. Possible values are:
|
category: | (optional) The category of job, e.g. ‘Web Development’ (where to get? - see Metadata API) |
subcategory: | (optional) The subcategory of job, e.g. ‘Web Programming’ (where to get? - see Metadata API) |
budget: | (conditionally optional) The budget of the Job, e.g. 100. Is used for ‘fixed-price’ jobs only. |
duration: | (conditionally optional) The duration of the job in hours, e.g. 90. Used for ‘hourly-jobs’ only. |
start_date: | (optional) The start date of the Job, e.g. 06-15-2011. If start_date is not included the job will default to starting immediately. |
status: | (required) The status of the job, e.g. ‘filled’. Possible values are: - ‘open’ - ‘filled’ - ‘cancelled’ |
Bases: odesk.namespaces.Namespace
HR API version 1
Invite to an interview.
job_id: | Job reference ID |
---|---|
cover: | Text of the cover letter |
profile_key: | (optional) Unique contractor’s key, e.g. ~~677961dcd7f65c01 |
provider_reference: | |
(optional) Developer’s unique reference ID, e.g. 12345. Use it if no profile_key available |
Either one of the parameters profile_key or provider_reference should be provided, otherwise error will be raised.
Bases: odesk.namespaces.Namespace
HR API version 3.
Activates a milestone that has not been funded.
milestone_id: | Milestone reference. |
---|---|
message: | (optional) Message from the client to the freelancer. |
Approve the milestone.
milestone_id: | Milestone reference. |
---|---|
amount: | (optional) Amount of money to be paid. If none provided, the full deposit_amount is paid. |
bonus: | (optional) Amount of money paid as bonus. |
pay_comments: | (optional) Comments on the payment. |
underpayment_reason: | |
(optional) Reason for a smaller payment than the one agreed. Valid values: 329, 330, 331, 332 | |
note2contractor: | |
(optional) Notes from the client to the freelancer. |
Approve the submission.
submission_id: | Submission reference. |
---|---|
amount: | Amount of money to be paid. If none provided, the full deposit_amount is paid. |
bonus: | (optional) Amount of money paid as bonus. |
pay_comments: | (optional) Comments on the payment. |
underpayment_reason: | |
(optional) Reason for a smaller payment than the one agreed. Valid values: 329, 330, 331, 332 | |
note2contractor: | |
(optional) Notes from the client to the freelancer. |
Create a milestone.
contract_reference: | |
---|---|
Contract reference. Contracts info are available in the Engagements API. | |
milestone_description: | |
Name of the milestone. | |
deposit_amount: | Amount to deposit for this milestone. |
due_date: | (optional) Expected date of finalization. Format mm-dd-yyyy. |
Delete the milestone.
milestone_id: | Milestone reference. |
---|
Edit an existing milestone.
milestone_id: | Milestone reference. |
---|---|
milestone_description: | |
(optional) Name of the milestone. | |
deposit_amount: | (optional) Amount to deposit for this milestone. |
due_date: | (optional) Expected date of finalization. Format mm-dd-yyyy. |
message: | (optional) Message from the client to the freelancer. |
Get active milestone for specific contract.
contract_reference: | |
---|---|
Contract reference. Contracts info are available in the Engagements API. |
Get specific job application as a client.
application_id: | Job application reference ID. |
---|---|
buyer_team__reference: | |
The reference ID of the client’s team. It allows getting applications for a specific team. Example: 34567. Use ‘List Teams’ API call to get it. |
Get specific job application as a freelancer.
application_id: | Job application reference ID. |
---|
Get all submissions for specific milestone.
milestone_id: | Milestone reference ID. |
---|
List job applications as a client.
buyer_team__reference: | |
---|---|
The reference ID of the client’s team. It allows getting applications for a specific team. Example: 34567. Use ‘List Teams’ API call to get it. | |
job_key: | The job key. It allows getting applications for a specific job. Example: ~01d54a7xxxxx125731. |
status: | (optional) The current status of the job application. Valid values: shortlisted, messaged, hired, offered, declined, hidden. |
profile_key: | (optional) Filters by a specific freelancer’s profile key. |
agency_team__reference: | |
(optional) The reference ID of the agency. | |
order_by: | (optional) Sorts results in format $field_name1;$field_name2;..$field_nameN;AD...A. Here A resebles ascending order, D - descending order. Example: order_by=created_time;D. |
page_offset: | (optional) Number of entries to skip |
page_size: | (optional: default 20) Page size in number of entries |
List job applications as a freelancer.
status: | (optional) The current status of the job application. Valid values: interviews, invites, active. |
---|
Reject the submission.
submission_id: | Submission reference. |
---|---|
note2contractor: | |
Notes from the client to the freelancer. |
Freelancer submits work for the client to approve.
milestone_id: | Milestone reference. |
---|---|
note2client: | Notes from freelancer to client about work that was done. |
amount: | Amount requested by the freelancer. |
Bases: odesk.namespaces.Namespace
Returns detailed profile information about job(s).
Documented at https://developers.odesk.com/?lang=python#jobs_get-job-profile
job_key: | The job key or a list of keys, separated by ”;”, number of keys per request is limited by 20. You can access job profile by job reference number, in that case you can’t specify a list of jobs, only one profile per request is available. |
---|
Bases: odesk.namespaces.Namespace
List details on a thread given a specific context, job key and application ID.
username: | User name |
---|---|
job_key: | The context job key |
application_id: | The context application ID. |
context: | Name of the context. Valid values: Interviews. Default: Interviews |
last_posts: | If set to True, return the list of the threads for the given context with the content of the last message for each of the threads listed. |
List details of a specific thread.
username: | User name |
---|---|
thread_id: | Thread ID |
paging_offset: | Start of page (number of results to skip) |
paging_count: | Page size (number of results) |
Retrieve message tray contents.
username: | User name |
---|---|
tray: | Tray |
paging_offset: | Start of page (number of results to skip) |
paging_count: | Page size (number of results) |
Retrieve a list of all active trays and a message count for each.
username: | User name |
---|
Send a new message (creating a new thread) or reply to an existing thread.
username: | User name (of sender) |
---|---|
recipients: | Recipient(s) (a single string or a list/tuple) |
subject: | Message subject |
body: | Message text |
thread_id: | (optional) The thread id if replying to an existing thread |
bcc: | (optional) List of BCC recipients, use comma (”,”) to separate ids in list |
attachment_key: | (optional) The unique private key of any attachment associated with the thread |
Marks threads as deleted.
username: | User name |
---|---|
thread_ids: | must be a list, even of 1 item |
Marks threads as deleted/not deleted.
username: | User name |
---|---|
thread_ids: | must be a list, even of 1 item |
deleted: | True/False (optional: default True) |
Marks threads as read.
username: | User name |
---|---|
thread_ids: | must be a list, even of 1 item |
Marks threads as read/unread.
username: | User name |
---|---|
thread_ids: | must be a list, even of 1 item |
read: | True/False (optional: default True) |
Marks threads as starred.
username: | User name |
---|---|
thread_ids: | must be a list, even of 1 item |
Marks threads as starred/not starred.
username: | User name |
---|---|
thread_ids: | must be a list, even of 1 item |
starred: | True/False (optional: default True) |
Marks threads as not deleted
username: | User name |
---|---|
thread_ids: | must be a list, even of 1 item |
Marks threads as unread.
username: | User name |
---|---|
thread_ids: | must be a list, even of 1 item |
Marks threads as unstarred.
username: | User name |
---|---|
thread_ids: | must be a list, even of 1 item |
Bases: odesk.namespaces.Namespace
Offers API version 1
Get specific offer as freelancer.
offer_id: | Offer reference ID. |
---|---|
action_name: | The name of the action to run. |
Get offer as client.
offer_id: | Offer reference ID. |
---|---|
company_id: | (optional) The client’s company reference ID. Example: 34567. Get it using ‘List companies’ API call. If company_id is not specified, the API will infer it from job’s data relying on the provided job__reference parameter. Either company_id or job__reference parameter must be specified. |
job__reference: | (optional) The job reference ID. Get it using ‘List jobs’ API call. |
Get specific offer as freelancer.
offer_id: | Offer reference ID. |
---|
List client offers.
company_id: | (optional) The client’s company reference ID. Example: 34567. Get it using ‘List companies’ API call. If company_id is not specified, the API will infer it from job’s data relying on the provided job__reference parameter. Either company_id or job__reference parameter must be specified. |
---|---|
team__reference: | |
(optional) The client’s team reference ID. Example: 34567. Get it using ‘List teams’ API call. Please note, that if team__reference is not specified, the API will infer it from job’s data relying on the provided. | |
job__reference: | (optional) The job reference ID. Get it using ‘List jobs’ API call. |
status: | (optional) The current status of the Offer. By default only offers in status new are returned. Valid values: accepted, new, declined, expired, withdrawn, cancelled, changed. |
page_offset: | (optional) Number of entries to skip |
page_size: | (optional: default 20) Page size in number of entries |
List freelancer’s offers.
status: | (optional) The current status of the Offer. By default only offers in status new are returned. Valid values: accepted, new, declined, expired, withdrawn, cancelled, changed. |
---|---|
page_offset: | (optional) Number of entries to skip |
page_size: | (optional: default 20) Page size in number of entries |
Send client offer to the freelancer.
title: | The title of the offer/contract. |
---|---|
job_type: | The type of the job. Valid values: hourly, fixed-price. |
charge_rate: | The budget amount for fixed-price jobs or the hourly charge rate for hourly jobs. |
message_to_contractor: | |
Instructions and other job details for the freelancer. | |
team__reference: | |
The client’s team reference ID. Example: 34567. Use ‘List teams’ API call to get it. | |
client_team_ref: | |
The client’s team reference. Example: mytestcompany:myteam. Use ‘List teams’ API call to get it. | |
contractor_username: | |
The freelancer’s username. Example: contractoruid. It can be ignored if contractor_reference or contractor_key parameter is set. | |
contractor_reference: | |
The freelancer’s reference ID. It will be ignored if contractor_username or contractor_key is specified. Example: 1234. You can use ‘Search freelancers’ API call to get the freelancer’s reference ID. | |
contractor_key: | The unique profile key, used if contractor_username is absent. Example: ~~677961dcd7f65c01. |
contractor_org: | The freelancer’s team reference, required for sending offers to agency freelancers. |
context: | Additional data about the offer. Valid array keys are: previous_offer_ref, job_posting_ref, job_application_ref, contract_ref. Example: context[job_posting_ref] = {{ opening_id }} & context[job_application_ref] = {{ application_id }} where job_posting_ref is a job key, for example ~01c8e0xxxxxxxx05255. |
charge_upfront_percent: | |
(deprecated) This parameter remains for compatibility reasons and will be removed in next releases those come after February 6th 2015. The percentage of the budget amount that the freelancer is paid on acceptance of the offer (for fixed price jobs only). | |
weekly_limit: | The maximum number of hours per week the freelancer can bill for. |
weekly_stipend: | An additional payment to be issued to the freelancer each week. |
expires_on: | (deprecated) This parameter remains for compatibility reasons and will be removed in next releases those come after February 6th 2015. Time when the offer expires. This should be a UNIX UTC timestamp. For example: 1400785324. |
close_on_accept: | |
If the value is 1, it automatically closes the related job post if this offer is accepted. The default value is 1. Valid values: 0, 1. | |
related_jobcategory: | |
Related job category. For example: 9. | |
milestones: | (required after February 6th 2015) Array of milestones for fixed-priced jobs in the following format: milestones[0][$key], ..., milestones[N][$key], where key is one of the following - milestone_description (string), deposit_amount (float), due_date (string in format mm-dd-yyyy) |
Bases: odesk.namespaces.Namespace
Returns list of all categories available for job/contractor profiles.
Retrieve an exhaustive list of attributes associated with the referenced provider.
provider_ciphertext: | |
---|---|
The provider’s cipher text (key) |
Retrieve an brief list of attributes associated with the referenced provider.
provider_ciphertext: | |
---|---|
The provider’s cipher text (key) |
Returns a list of reasons by specified type.
type: | Requested type of the reason. Valid values: EmployerEndsNoStartContract, CloseOpening, RejectCandidate, RejectInterviewInvite, CancelCandidacy, EndProviderContract, EndCustomerContract, EndAssignment |
---|
Returns list of all region choices available for job/contractor profiles.
Returns list of all skills available for job/contractor profiles.
Returns list of all available tests at oDesk.
Search oDesk jobs. NOTE: This call will be deprecated in favor to API V2 search_jobs()
data: |
|
||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
page_offset: | Start of page (number of results to skip) (optional) |
||||||||||||||||||||||||||||||
page_size: | Page size (number of results) (optional: default 20) |
||||||||||||||||||||||||||||||
order_by: | Sorting, in format $field_name1;$field_name2;..$field_nameN;AD...A, where A means ‘Ascending’, D means ‘Descending’, e.g. date_posted;A |
Search oDesk providers. NOTE: This call will be deprecated in favor to API V2 search_providers()
data: |
|
||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
page_offset: | Start of page (number of results to skip) (optional) |
||||||||||||||||||||||||||||||||||||||
page_size: | Page size (number of results) (optional: default 20) |
||||||||||||||||||||||||||||||||||||||
order_by: | Sorting, in format $field_name1;$field_name2;..$field_nameN;AD...A, where ‘A’ means ascending, ‘D’ means descending, the only available sort field as of now is “Date Created” |
Bases: odesk.namespaces.Namespace
Returns list of all categories (v2) available for job/contractor profiles.
Search jobs.
The Job search API allows to third party applications to search for any public job on oDesk. The search parameters mirror the options available on the site plus options to configure the format of your results.
Parameters:
data:
- (optional) A dict of the following parameters
(all parameters are optional):
q: The search query. With API v2 we support a subset of the lucene query syntax. In particular we support AND, OR, NOT and additionally fields exposed are the ones indicated below, e.g q=title:php AND category:web_development
title: Search in title of job profile
skills: Search in skills of job profile
groups: Search in groups of job profile
tests: Search in tests of job profile Use get_tests_metadata() to get available tests
tests_top_10: Search for jobs that require provider to be in top 10 for test
tests_top_30: Search for jobs that require provider to be in top 30 for test
category: Search for category of job profile See full list here: https://developers.odesk.com/?lang=python#metadata_list-categories
subcategory: Search for subcategory of job profile See full list here: https://developers.odesk.com/?lang=python#metadata_list-categories in the table “Changes”
job_type: Type of job. Acceptable values are:
- hourly
- fixed
duration: Indicates job duration. Acceptable values are:
- week
- month
- quarter
- semester
- ongoing
workload: Indicates workload for the job. Acceptable values are:
- as_needed
- part_time
- full_time
client_feedback: Constrains the search to jobs posted by clients with rating within a range:
- If the value is None, then jobs from clients without rating are returned.
- single params like 1 or 2,3 are acceptable (comma separated values result to OR queries)
- ranges like [2 TO 4] are acceptable
client_hires: Constrains the search to jobs from clients with range within the given number of past hires:
- single params like 1 or 2,3 are acceptable (comma separated values result to OR queries)
- ranges like [10 TO 20] are acceptable
budget: Constrains the search to jobs having the budget within the range given
- ranges like [100 TO 1000] are acceptable
job_status: The status that the job is currently in Acceptable values are:
- open
- completed
- cancelled
posted_since: Number of days since the job was posted.
sort: Field and direction sorting search results. create_time descending is used by default. Allowed sorting fields are:
- create_time
- client_rating
- client_total_charge
- client_total_hours
- score
- workload
- duration
Example: sort=create_time%20desc
page_offset: (optional) Start of page (number of results to skip)
page_size: (optional: default 20) Page size (number of results)
Search providers.
The contractor search API allows to third party applications to search for any public contractor on oDesk. The search parameters mirror the options available on the site plus options to configure the format of your results.
Parameters:
data:
- (optional) A dict of the following parameters
(all parameters are optional):
q: The search query. With v2 API we support a subset of the lucene query syntax. In particular we support AND, OR, NOT and additionally fields exposed are the ones indicated below, e.g q=title:php AND category:"Web Development"
title: Search in title of contractor profile
skills: Search in skills of contractor profile
groups: Search in groups of contractor profile
tests: Search in tests of contractor profile Use get_tests_metadata() to get available tests
tests_top_10: Search for contractors that are in top 10 for test
tests_top_30: Search for contractors that are in top 30 for test
category: Search for category of contractor profile. Use get_categories_metadata() to get available categories
subcategory: Search for subcategory of contractor profile. Use get_categories_metadata() to get available categories
region: Search for contractor profile in a region Acceptable values are titles from Metadata Regions API get_regions(), e.g. Latin America
feedback: Search for contractor with feedback score: - single params like 3 or 3,4 are acceptable
(comma - separated values result to OR queries)
- also ranges like [3 TO 4] are acceptable
rate: Search for contractor profile with rate: - single params like 20 or 20,30
are acceptable (comma - separated values result to OR queries)
- ranges like [20 TO 40] are acceptable
hours: Search for contractor profile that has worked this many hours
- single params like 20 or 20,30 are acceptable (comma separated values result to OR queries)
- ranges like [20 TO 40] are acceptable
recent_hours: Search for contractor profile that has worked this many hours recently:
- single params like 20 or 20,30 are acceptable (comma separated values result to OR queries)
- ranges like [20 TO 40] are acceptable
last_activity: Date of last time contractor worked - last_activity is searched with ISO 8601
Date syntax with hours always set at 00:00:00.000 (i.e. 2013-01-04T00:00:00.000Z)
english_skill: Assessment of contractor on his/her english skills. Value can be set to one of 0 | 1 | 2 | 3 | 4 | 5
is_odesk_ready: Whether contractor is odesk ready. Value can be set to 1 or 0
profile_type: Whether contractor is an AC or an IC. Possible values:
- Independent
- Agency
include_entities: Parameter can be set to 0 or 1 If 1: data in response will contain only profile ids array.
page_offset: (optional) Start of page (number of results to skip)
page_size: (optional: default 20) Page size (number of results)
Bases: odesk.namespaces.Namespace
Archive single activity within a company.
This call is identical to archive_team_task, so that team_id is the same as company_id.
company_id: | Company ID. Use the parent_team__id value from hr.get_team() API call. |
---|---|
task_code: | A single Activity ID as a string or a list or tuple of IDs. |
Archive single activity within a team.
company_id: | Company ID. Use the parent_team__id value from hr.get_team() API call. |
---|---|
team_id: | Team ID. Use the ‘id’ value from hr.get_team() API call. |
task_code: | A single Activity ID as a string or a list or tuple of IDs. |
Assign an existing engagement to the list of activities.
Note that activity will appear in contractor’s team client only if his engagement is assigned to the activity and activities are activated for the ongoing contract.
This will override assigned engagements for the given activities. For example, if you pass empty task_codes or just omit this parameter, contractor engagement will be unassigned from all Activities.
company_id: | Company ID. Use the parent_team__id value from hr.get_team() API call. |
---|---|
team_id: | Team ID. Use the ‘id’ value from hr.get_team() API call. |
engagement: | Engagement ID that will be assigned/unassigned to the given list of Activities. |
task_codes: | Task codes (must be a list, even of 1 item) |
Return a specific activities within a company. This is identical to get_team_specific_tasks, so that team_id is the same as company_id.
company_id: | Company ID. Use the parent_team__id value from hr.get_team() API call. |
---|---|
task_codes: | Task codes (must be a list, even of 1 item) |
Retrieve a list of all activities within a company. It is equivalent to the get_team_tasks so that team_id is equal to company_id which is parent team ID.
This call returns both archived and active activities.
The user authenticated must have been granted the appropriate hiring manager permissions.
company_id: | Company ID. Use the parent_team__id value from hr.get_team() API call. |
---|
Return a specific activities within a team.
company_id: | Company ID. Use the parent_team__id value from hr.get_team() API call. |
---|---|
team_id: | Team ID. Use the ‘id’ value from hr.get_team() API call. |
task_codes: | Task codes (must be a list, even of 1 item) |
Retrieve a list of all activities in the given team.
This call returns both archived and active activities.
The user authenticated must have been granted the appropriate hiring manager permissions.
company_id: | Company ID. Use the parent_team__id value from hr.get_team() API call. |
---|---|
team_id: | Team ID. Use the ‘id’ value from hr.get_team() API call. |
Create an activity within a company. This call is identical to post_team_task so that team_id is equal to company_id.
The authenticated user needs to have hiring manager privileges.
company_id: | Company ID. Use the parent_team__id value from hr.get_team() API call. |
---|---|
code: | Activity ID |
description: | Activity description |
url: | Activity URL |
engagements: | (optional) A list of engagements that are to be assigned to the created activity. It can be a single engagement ID, or an iterable of IDs. |
all_in_company: | (optional) If True, assign the created activity to all engagements that are exist in the company at the moment. |
If both engagements and all_in_company are provided, engagements list will override the all_in_company setting.
Create an activity within a team.
The authenticated user needs to have hiring manager privileges
company_id: | Company ID. Use the parent_team__id value from hr.get_team() API call. |
---|---|
team_id: | Team ID. Use the ‘id’ value from hr.get_team() API call. |
code: | Task code |
description: | Task description |
url: | Task URL |
engagements: | (optional) A list of engagements that are to be assigned to the created activity. It can be a single engagement ID, or an iterable of IDs. |
all_in_company: | (optional) If True, assign the created activity to all engagements that are exist in the company at the moment. |
If both engagements and all_in_company are provided, engagements list will override the all_in_company setting.
Update an activity within a company. This call is identical to put_team_task so that team_id is equal to company_id.
The authenticated user needs to have hiring manager privileges.
company_id: | Company ID. Use the parent_team__id value from hr.get_team() API call. |
---|---|
code: | Task code |
description: | Task description |
url: | Task URL |
engagements: | (optional) A list of engagements that are to be assigned to the created activity. It can be a single engagement ID, or an iterable of IDs. |
all_in_company: | (optional) If True, assign the created activity to all engagements that are exist in the company at the moment. |
If both engagements and all_in_company are provided, engagements list will override the all_in_company setting.
Update an activity within a team.
The authenticated user needs to have hiring manager privileges.
company_id: | Company ID. Use the parent_team__id value from hr.get_team() API call. |
---|---|
team_id: | Team ID. Use the ‘id’ value from hr.get_team() API call. |
code: | Task code |
description: | Task description |
url: | Task URL |
engagements: | (optional) A list of engagements that are to be assigned to the created activity. It can be a single engagement ID, or an iterable of IDs. |
all_in_company: | (optional) If True, assign the updated activity to all engagements that are exist in the company at the moment. |
If both engagements and all_in_company are provided, engagements list will override the all_in_company setting.
Unarchive single activity within a company.
This call is identical to unarchive_team_task, so that team_id is the same as company_id.
company_id: | Company ID. Use the parent_team__id value from hr.get_team() API call. |
---|---|
task_code: | A single Activity ID as a string or a list or tuple of IDs. |
Unarchive single activity within a team.
company_id: | Company ID. Use the parent_team__id value from hr.get_team() API call. |
---|---|
team_id: | Team ID. Use the ‘id’ value from hr.get_team() API call. |
task_code: | A single Activity ID as a string or a list or tuple of IDs. |
Batch update Activities using csv file contents.
This call is experimental, use it on your own risk.
company_id: | Company ID. Use the parent_team__id value from hr.get_team() API call. |
---|---|
csv_data: | Task records in csv format but with “<br>” as line separator - “companyid”,”teamid”,”userid”,”taskid”,”description”,”url” Example: “acmeinc”,””,””,”T1”,”A Task”,”http://example.com“<br> “acmeinc”,”acmeinc:dev”,”b42”,”T2”,”Task 2”,”“ |
Bases: odesk.namespaces.Namespace
Retrieve list of all activities assigned to the specific engagement.
The user authenticated must have been granted the appropriate hiring manager permissions.
engagement_ref: | Engagement reference ID. You can get it using ‘List engagemnets’ API call. Example: 1234. |
---|
Bases: odesk.namespaces.Namespace
Delete a company’s user snapshot memo at given time or ‘now’.
company_id: | The Company ID |
---|---|
user_id: | The User ID |
datetime: | (optional)(default ‘now’) Timestamp either a datetime object or a string in ISO 8601 format (in UTC) yyyymmddTHHMMSSZ or a string with UNIX timestamp (number of seconds after epoch) More than one timestamps can be specified either as a range or as a list of values:
|
Retrieve a company’s user snapshots during given time or ‘now’.
company_id: | The Company ID |
---|---|
user_id: | The User ID |
datetime: | (optional)(default: ‘now’) Timestamp either a datetime object or a string in ISO 8601 format (in UTC) yyyymmddTHHMMSSZ or a string with UNIX timestamp (number of seconds after epoch) |
Retrieve a team member’s workdiaries for given date or today.
Parameters:
team_id: The Team ID username: The Team Member’s username date: (optional) A datetime object or a string in yyyymmdd format tz: (optional) Time zone to use. Possible values: * ‘mine’ (default) * ‘user’ * ‘gmt’
Update a company’s user snapshot memo at given time or ‘now’.
company_id: | The Company ID |
---|---|
user_id: | The User ID |
memo: | The Memo text |
datetime: | (optoinal)(default ‘now’) Timestamp either a datetime object or a string in ISO 8601 format (in UTC) yyyymmddTHHMMSSZ or a string with UNIX timestamp (number of seconds after epoch) More than one timestamps can be specified either as a range or as a list of values:
|
Bases: odesk.namespaces.Namespace
Delete a company’s user snapshot by contract ID at given time or ‘now’.
contract_id: | The Contract ID |
---|---|
datetime: | (optional)(default ‘now’) Timestamp either a datetime object or a string in ISO 8601 format (in UTC) yyyymmddTHHMMSSZ or a string with UNIX timestamp (number of seconds after epoch) More than one timestamps can be specified either as a range or as a list of values:
|
Retrieve a company’s user snapshots by contract ID during given time or ‘now’.
contract_id: | The Contract ID |
---|---|
datetime: | (optional)(default: ‘now’) Timestamp either a datetime object or a string in ISO 8601 format (in UTC) yyyymmddTHHMMSSZ or a string with UNIX timestamp (number of seconds after epoch) |
Retrieve team member snapshots.
company_or_team_id: | |
---|---|
The Company ID or Team ID |
|
online: | (optional) Filter user by work hours. Possible values are (default):
|
disabled: | (optional) Whether disabled users need to be returned in response. Possible values are (default):
|
Retrieve all teamrooms accessible to the authenticated user.
Retrieve workdiary snapshots by contract
contract_id: | The Contract ID. |
---|---|
date: | The target date in yyyymmdd format. |
tz: | (optional) Time zone to use. Possible values: * ‘mine’ (default) * ‘user’ * ‘gmt’ |
Update a company’s user snapshot memo by contract ID at given time or ‘now’.
contract_id: | The Contract ID |
---|---|
memo: | The Memo text |
datetime: | (optoinal)(default ‘now’) Timestamp either a datetime object or a string in ISO 8601 format (in UTC) yyyymmddTHHMMSSZ or a string with UNIX timestamp (number of seconds after epoch) More than one timestamps can be specified either as a range or as a list of values:
|
Bases: odesk.namespaces.GdsNamespace
Generate agency specific time reports.
company_id: | The Company ID |
---|---|
agency_id: | The Agency ID |
query: | The GDS query string |
hours: | (optional) Limits the query to hour specific elements and hides all financial details Default: False |
Generate company wide time reports.
All reporting fields available except earnings related fields. In order to access this API the authorized user needs either hiring or finance permissions to all teams within the company.
company_id: | Company ID |
---|---|
query: | The GDS query string |
hours: | (optional) Limits the query to hour specific elements and hides all financial details Default: False |
Get caller’s specific time report.
The caller of this API must be the provider himself.
provider_id: | The provider_id of the caller |
---|---|
query: | The GDS query string |
hours: | (optional) Limits the query to hour specific elements and hides all financial details Default: False |
Generate team specific time reports.
company_id: | The Company ID |
---|---|
team_id: | The Team ID |
query: | The GDS query string |
hours: | (optional) Limits the query to hour specific elements and hides all financial details Default: False |