The workroom/getWorkviewDetails method is an Elance Developer API Workroom method that provides an authenticated client user with details on a project's Work View™ activity for a given date.

The Elance Work View™ system, which is integrated with the Tracker time clock system for hourly work, takes visual snapshots of providers' desktops as they work on a project. (For more information, read What is Work View™? on the Elance Support site.) API clients can obtain Work View™ records and screenshots returned as screenData objects for a given date. If the date is omitted, workroom/getWorkviewDetails returns the most recent Work View™ data.

Work View™ data may only be retrieved for one workroom user per request.

workroom/getWorkviewDetails is an authenticated method. It requires a Developer API key and an OAuth Consumer Secret, both issued by Elance. It is invoked using an HTTP or HTTPS GET request. For more details on the OAuth authentication protocol, see Using OAuth with Authenticated Methods.

This method does not support the JSONP response format.

For more information on the format of an Elance Developer API request, see Getting Started.

I. Required Query String Parameters

Parameter Description
bidId The unique integer ID of the winning bid for this project.
userId The unique integer ID of the user for whom Work View™ data is being requested.

II. Optional Query String Parameters

Parameter Description
date The day for which to retrieve Work View™ data, in the format DD-MON-YY, where MON is the first three letters of the English name of the month. If omitted, the most recent Work View™ information is returned; client applications can then use the prevDate and nextDate properties in the response to navigate the collection of available Work View™ entries for the project.
rpp The number of screenBucket objects to return per request. The default is 6. If more than 10 objects are requested, only 10 are included in the response.
page Which page of the result set to view. The default is 1. If the page requested is equal to or greater than the totalPages response property, no records will be returned.

III. Response Data Description

For JSON responses, unless otherwise specified, all parameters are returned as JSON string types. The value in the Data Type column denotes the type to which the property can safely be cast.

Property Data Type Description
bidData BidData object The details for the bid associated with this Workroom.
hours integer (JSON number) The currently total hours worked by the provider for this day.
date date The date on which this data was recorded.
prevDate date The previous available Work View™ date.
nextDate date The next available Work View™ date.
userName string The unique name for this user.
screenBuckets array of ScreenBucket objects (defined below) The list of ScreenBucket objects representing the screen shots taken by Work View™

1. ScreenBucket Data

Property Data Type Description
title string The hour during which this screen capture was taken, expressed as a range (e.g., "12pm-1pm").
screens array array of ScreenData objects

IV. Request/Response Example in JSON

1. Retrieving Recent Work View™ Data

The following example HTTP GET request demonstrates retrieving Work View™ data for a user in the specified workroom for the date of September 3rd, 2010. The HTTP headers for the GET request are shown below. (NOTE: Elance recommends that developers access OAuth APIs using one of the many publicly available libraries.)

A. Request

GET /api/workroom/getWorkviewDetails?bidId=19807473&userId=1102928&date=03-SEP-10 HTTP/1.1
User-Agent: anyMeta/OAuth 1.0 - ($LastChangedRevision: 134 $)
Host: api.elance.com
Accept: */*
Authorization: OAuth realm="",oauth_signature_method="HMAC-SHA1",oauth_signature="Ustwr5TL6pBMMe0KUQMbTfLTfSk%3D",oauth_nonce="4c8bf34a8e891",oauth_timestamp="1284240202",oauth_token="988054567-1425962-1425962-22.111.123-8730ea26ec6e396-%2A",oauth_consumer_key="7dfc476b57eee5b8dc089c0f125a0fcdab409b3c",oauth_version="1.0"

B. Response

{
  "api": "workroom\/getWorkviewDetails",
  "apiVersion": 1,
  "rcode": 1,
  "data": {
    "bidData": {
      "bidId": "19807473",
      "jobId": "19807472",
      "jobName": "iPhone Job",
      "userType": "PROVIDER",
      "clientName": "MegaCorp, LLC",
      "clientImageURL": "http:\/\/www.elance.com\/uploads3\/E8\/B9\/19970536\/AS_cover_.jpg",
      "clientCountry": "United States",
      "clientCountryCode": "US",
      "clientCity": "Sunnyvale",
      "providerName": "Blue Ash, Inc",
      "providerImageURL": "http:\/\/www.elance.com\/uploads3\/FB\/BD\/19971579\/361667471.jpg",
      "providerCountry": "United States",
      "providerCountryCode": "US",
      "providerCity": "Sunnyvale",
      "phase": "5",
      "status": "Working",
      "isHourly": false,
      "isSponsored": false,
      "isPreBid": true,
      "bidAmount": "1000",
      "duration": ""
    },
    "userName": "ProviderUno",
    "prevDate": "30-JUL-10",
    "nextDate": null,
    "hours": 0,
    "screenBuckets": {
      "0": {
        "title": "2 pm-3 pm",
        "screens": {
          "0": {
            "screenId": "178248",
            "screenURL": "http:\/\/www.elance.com\/php\/files\/main\/download.php?crypted=Y3R4JTNEd3QyJTI2ZmlkJTNEMTk5NzI4OTQlMjZyaWQlM0QtMSUyNnBpZCUzRDE5ODA3NDcz",
            "thumbURL": "http:\/\/www.elance.com\/php\/files\/main\/download.php?crypted=Y3R4JTNEd3QyJTI2ZmlkJTNEMTk5NzI4OTQlMjZyaWQlM0QtMSUyNnBpZCUzRDE5ODA3NDczJTI2dCUzRDE=",
            "tileURL": "http:\/\/www.elance.com\/php\/files\/main\/download.php?crypted=Y3R4JTNEd3QyJTI2ZmlkJTNEMTk5NzI4OTQlMjZyaWQlM0QtMSUyNnBpZCUzRDE5ODA3NDczJTI2dCUzRDI=",
            "timestamp": 1283538323,
            "userId": "1707664",
            "userName": "ProviderUno",
            "companyName": "Provider Uno",
            "logoURL": "http:\/\/www.elance.com\/uploads3\/FB\/BD\/19971579\/361667471.jpg",
            "numComments": 0,
            "date": "03-SEP-10"
          }
        }
      }
    }
  }
}

V. Error Codes

If the Elance Developer API encounters an error in processing the request, it may return one of the error codes below. The format of error responses is specified in the Getting Started page. For a list of other common errors that can be thrown by this method, see Common API Error Codes.

Error Code Description
E_API_NOT_AUTHORIZED You are not authorized to access this data.
E_WORKROOM_INVALID_BID Bid ID is invalid or unspecified where required.
E_WORKROOM_BID_ACCESS The user specified by userId does not have access to the workroom specified by bidId.