Back to oDesk.com » Love the way you work.

Welcome to the oDesk Community! Connect here with fellow clients, contractors, and oDesk staff. Please review our Usage Policy.

Fetching oDesk jobs.

Hey guys,
I have created a Windows C# 4.0 application that is fetching jobs from oDesk according to different parameters sent to the REST API. But the problem is it is only returning public jobs. When I login to a browser and visit the same URL it is returning all the jobs in browser(and not in my application) that are available to oDesk user(not private jobs) and also public jobs. I am fetching data in JSON format(but for confirming the data i am using xml format in browser).

For example I am using the following URL to fetch jobs but it is only returning public jobs.
https://www.odesk.com/api/profiles/v1/search/jobs.xml?page=0;100&q=store&t=Hourly&dp=1&st=Open&sort=date_posted;A

and if I login to oDesk site and visit the same URL in browser it shows public jobs and oDesk jobs.

so how can I get all the jobs? Can i get those jobs using oAuth or REST API key authentication using my api key and api secret? if possible then please give a little example of how to implement oAuth or a link. And right now I am trying to authenticate user in oAuth but it is returning a error: The remote server returned an error: (503) Server Unavailable.

Vote Result

----------
Score: 0.0, Votes: 0
Hello Smarth, thank you for

Hello Smarth,

thank you for choosing oDesk API for your application.

According to your questions:
- non-loggen-in users can see only public jobs.
- 'Yes' you can authenticate your app via OAuth/APIKey and request all jobs.
- about error 503 - as of now I don't see this issue. Please contact apisupport@ and provide full details on request, if you still get such a response, so we can assist you more effectively and help to find a solution to your problem.

Hello Maksym, Thank you very

Hello Maksym,
Thank you very much for replying. Regarding your reply I will try to see whether there is a problem creating oAuth URL in my code. If you can take a look at the following url which i am generating through application to fetch the access token. Can you please tell me if there is any problem in the oAuth url that i am generating.

https://www.odesk.com/api/auth/v1/oauth/token/request?oauth_consumer_key=48d950711cf312007fb18d74162e714d&oauth_nonce=awtjguhufk&
oauth_signature_method=HMAC%2DSHA1&oauth_timestamp=1359714887&
oauth_signature=Yo3XL3twvgPaBj8gTWVmZu%2BV%2BPY%3D


Smarth, please follow the

Smarth, please follow the section "Get Request Token". You can also take a look on RFC 5849 that provides full detailed description of OAuth protocol.

Wrong URLs

Hey Maksym,
At last I'm able to receive the token. Actually the problem was in the URLs. You've posted the wrong URLs on your oAuth page.
I was using the following URL:

https://www.odesk.com/api/auth/v1/oauth/request

instead of this:

https://www.odesk.com/api/auth/v1/oauth/token/request

Now I'm going to test the following URL and see if the following URL is working or not:

https://www.odesk.com/api/auth/v1/oauth/access

and:

https://www.odesk.com/api/auth/v1/oauth/token/access

Please update these URLs in your oAuth page because it is very problematic for us to find the exact problem if the given URL is not working. I found these URLs in the an example file here http://developers.odesk.com/f/example_oauth_zf.php

Smarth,thank you for your

Smarth,

thank you for your feedback.

Please follow Request Token and Access Token sections for OAuth that contain as of now correct urls, they have been also placed into sidebar menu.

Fetch Data According to Multiple Subcategories

Hey Maksym,
Thank you for your help. Now I have a small problem regarding searching jobs through multiple values of same field. For example: I want to search jobs using the following URL:
https://www.odesk.com/api/profiles/v1/search/jobs.xml?c1=Web%20Development&dp=14&max=99999&min=100&page=0%3B100&q=store&sort=date_posted%3BD&t=Fixed
&c2=Web+Design&c2=Web+Programming

As you can see in the last parameters I have passed two sub categories. But it returns only data according to only one subcategory that is passed last in the URL.
Means, if I am searching data using 'Web Design' and 'Web Programming' it returns only data according to 'Web Programming' and if I search data using 'Web Programming' and 'Web Design' it returns only data according to 'Web Design'. Same thing happens for 'Workload' and 'Duration' parameters. So please help me how to pass multiple values of same field in the URL and get data.

Smart, first, you can not

Smart,

first, you can not pass a parameter with the same name but with different values - it is a fundamental principle, in that case you should pack the param as array.

second, as per documentation - the api does not support filtering by multiple categories.

Job Status Not Working

Hey Maksym,
I am trying to search open jobs but it is also returning cancelled,in progress or completed jobs. I am using the following URL for testing:
https://www.odesk.com/api/profiles/v1/search/jobs.xml?page=0;100&q=parsing&c1=Software+Development&sort=date_posted;D&st=Open

When i search the term 'parsing' with category 'Software Development' in your site it returns around 15 records. But when i try to fetch through API like above URL it is returning 883 records. So please tell me where i am going wrong.

Smarth, I confirm the issue

Smarth, I confirm the issue with this parameter. A fix is expected with next release. Sorry for inconvinience.

Hello Maksym, Today I was

Hello Maksym,
Today I was testing my application. And I noticed that 'Date Posted' parameter doesn't work either. For ex. I used the following test URL to search for jobs
https://www.odesk.com/api/profiles/v1/search/jobs.xml?page=0;200&q=zbrush&dp=14&sort=date_posted;D
And it is returning jobs older than 14 days and not just 14 days old.
Can you please tell me when is the next fix is expected to release?

Hello Smarth, the 'dp'

Hello Smarth,

the 'dp' parameter filters jobs by range, it doesn't mean that you can get jobs posted the exact date. There is no fix expected for 'dp' parameter.