The workroom/{bidId} method returns general information about the project, such as the total price and project type.

When a contractor makes a proposal on a job, a bid object is created on the Elance system. This bid is the basis of the Workroom, which is identified by its unique bid ID. Every bid placed by a contractor creates a Workroom, which enables contractors and employers to communicate privately with one another during the proposal process. When a bid is accepted, that bid's Workroom becomes the Workroom for the life of the project.

The bidId parameter can be obtained using the jobs/my method.

This method must be called using an HTTPS GET request. All responses are returned in the JSON format.

I. Preconditions

This method requires that the calling application has authenticated a user with the OAuth 2.0 protocol, as described on the Getting Started page.

II. Required URL Parameters

The following required parameters must be included as part of the URL.

Parameter Description
bidId The unique ID assigned by Elance to the Workroom.

III. Optional Query String Parameters

This method defines no additional query string parameters.

IV. Response Data Description

Property Name Data Type Description
bidData BidData object The object whose properties describe the Workroom.

1. BidData Object Data Description

Property Name Data Type Description
bidId integer The unique ID, assigned by Elance, associated with this bid. This ID is also the unique ID of the project's Workroom, which is created for each proposal as soon as a proposal is submitted.
jobId integer The unique ID of the associated job to which this Workroom is attached.
jobName string The name of the associated job, as chosen by the employer when the job was posted.
userType string Specifies the role occupied by the currently logged in user in this project.
clientUserId integer The unique integer ID assigned to the employer on Elance.
clientUserName string The unique text string chosen by the employer as her Elance login.
clientName string The individual or corporate name of the employer.
clientImageURL string The URL resource pointer to the picture representing the employer, such as a photograph or a logo.
clientCountry string The employer's country, returned as the full name of the nation.
clientCountryCode string The alpha-2 country code for the employer's country of residence, as specified by ISO 3166-1.
providerUserId integer The unique ID of the contractor, as assigned by Elance.
providerUserName string The unique text string chosen by the contractor as her Elance login.
providerName string The legal name of the contractor.
providerCompany string The name of the contractor's business. If the contractor is a sole proprietor, this name will be equal to the value of the providerName property.
providerCompanyURL string The URL to the Web site of the contractor's business.
providerImageURL string The URL resource pointer to the picture representing the contractor, such as a photograph or a business logo.
providerProfileURL string The URL to the contractor's Elance profile.
providerJobHistoryURL string A URL linking to a page on Elance.com that displays the recent Elance jobs worked by the contractor.
providerCountry string The contractor's country, returned as the full name of the nation.
providerCountryCode string The alpha-2 country code for the contractor's country of residence, as specified by ISO 3166-1.
providerCity string The contractor's city of residence.
providerState string The contractor's state or province of residence.
providerRegion string Region where the contractor resides. For example: North America or Europe.
providerHourlyRate string The average amount that the contractor charges on an hourly basis.
providerIdVerified boolean True if the contractor has verified her identity using Elance's identity verification service; otherwise, false.
providerIsBusiness boolean True if the contractor is a legal business entity; otherwise, false.
phase integer (Enumeration) A value indicating the current state of the project, such as whether it is open, in progress, or complete. See Phase Enumeration for valid values.
status string A textual representation of the current phase of the project. Used for display purposes only; the values returned for this property may change without notice.
secondaryStatus string A textual representation of the current phase of the project.
isHourly boolean True if the contractor charges the employer for every hour worked; false if the job is fixed price, and paid according to the fulfillment of milestones agreed upon by the employer and the contractor.
isSponsored boolean True if the contractor paid additional Connect points to promote this bid in the bid listings; otherwise, false.
isDelisted boolean True if this bid has been removed due to a violation of Elance policies; otherwise, false.
isPreBid boolean True if the bid represents a question from the contractor to the employer, and does not include a price quote; otherwise, false.
isAwarded boolean True if this bid was selected as the winning bid for the associated job; otherwise, false.
isCompleted boolean True if the associated project has been marked by both the employer and the contractor as finished; otherwise, false.
bidAmount decimal (JSON string) The total amount, in US dollars, that the contractor is proposing as the project cost.
hourlyRate decimal (JSON string) The amount per hour that the contractor proposes charging for this work. If the job is a fixed-price job, this property will be an empty string.
hoursPerWeek integer (JSON string) The number of hours the contractor proposes working each week until project completion.
duration integer The proposed time it will take to complete the project. This unit is either days, weeks, or months, and depends upon the desired timeframe initially selected by the employer.
submissionDate timestamp The time, expressed in seconds elapsed since January 1st, 1970, on which this proposal was submitted by the contractor to the employer.
awardedDate timestamp The time, expressed in seconds elapsed since January 1st, 1970, on which the employer selected this proposal as the winning bid.
contractEndDate string The day by which the contract should be completed. For hourly projects, this marks the final day on which billed hours will be auto-approved.
milestonesCount integer The number of status checkpoints associated with this project.
milestonesCompleted integer The number of project status checkpoints that have elapsed as of the current day.
canPostMessages boolean True if the currently logged on user have permission to send new messages to the Workroom; otherwise, false.
numUnreadMessages integer The number of Workroom messages for this bid that have not yet been opened by one of the Workroom users. 

V. Request/Response Examples in JSON

1. Requesting Workroom Details

The following URL requests Workroom details for the Workroom represented by the bid ID 27614904.

A. Request

https://api.elance.com/api2/workroom/27614904?access_token=4eb1de8bf06b10210e000005|3680366|-vGCOtggV2YMsoRThQB3Hg

B. Response

{
    "data": {
        "bidData": {
            "bidId": "30006022",
            "jobId": "30005861",
            "jobName": "PHP Programmer Needed",
            "userType": "PROVIDER",
            "clientUserId": "4043544",
            "clientUserName": "employer_01",
            "clientName": "employer_01",
            "clientImageURL": "https:\/\/elance.com\/media\/images\/4.0\/no-photo-64x80.jpg",
            "clientCountry": "United States",
            "clientCountryCode": "US",
            "providerUserId": "4043541",
            "providerUserName": "contractor02",
            "providerName": "Marshall Erickson",
            "providerCompany": "Marshall Erickson",
            "providerCompanyURL": "https:\/\/elance.com\/s\/contractor02\/",
            "providerImageURL": "https:\/\/elance.com\/media\/images\/4.0\/no-photo-64x80.jpg",
            "providerProfileURL": "https:\/\/elance.com\/s\/contractor02\/",
            "providerJobHistoryURL": "https:\/\/elance.com\/s\/contractor02\/job-history\/",
            "providerCountry": "United States",
            "providerCountryCode": "US",
            "providerCity": "Seattle",
            "providerState": "WA",
            "providerRegion": "021",
            "providerHourlyRate": "44",
            "providerIdVerified": false,
            "providerIsBusiness": false,
            "phase": "5",
            "status": "Working",
            "secondaryStatus": "",
            "isHourly": false,
            "isSponsored": false,
            "isDelisted": false,
            "isPreBid": false,
            "isAwarded": true,
            "isCompleted": true,
            "bidAmount": "821.92",
            "hourlyRate": "0",
            "hoursPerWeek": "0",
            "duration": "",
            "submissionDate": 1335672000,
            "awardedDate": 1335672000,
            "contractEndDate": "May 20, 2012",
            "milestonesCount": 1,
            "milestonesCompleted": 0,
            "canPostMessages": true,
            "numUnreadMessages": 0
        }
    }
}

VI. Error Codes

Error Description
E_WORKROOM_INVALID_BID Either the bidId supplied in the URL is invalid, or the currently logged in user does not have permission to access that Workroom.

For a list of additional error codes that can be thrown by this method, see Common API Error Codes.