What can be done with CAD Crowd API?
API lets users access public information on cadcrowd.com programmatically. Such information has to be used in accordance with the CAD Crowd.com terms of services and Affiliate Program description. Allowed use includes displaying open public projects, information from user profiles on the affiliate's websites with appropriate links to cadcrowd.com projects or profiles. This information will be useful for all CAD Crowd members.
Hierarchy of API calls See more detailed explanation and examples here
- User
- Project
- Properties
- Search
- By expertise
- By owner
- Featured
- For premier members only
- By budget
- Order by: random, start time
- Feedback
- Search
- By receiver and type and status
- By project
- Order by: random, time
Common parameters The following parameters are available to all calls:
- apikey
- API key, paramater is optional.
- aff
- username of affiliate. Include this parameter to the widget's code to make all URLs returned by API affiliate-friendly, meaning that every URL will include the affiliate's username. Use this parameter in your applications to refer new users to CAD Crowd.com and earn bonus from their commissions and fees.
- format
- xml, json. This parameter is included in URI
- count
- number of items on a page
Limitations on use of API We encourage users to use the API in a good manner, save our server resources using caching. To keep our servers available to all of our clients, we introduce limit-rate on API usage. Users can make up to requests per minute. Each user is granted an API key, which should be used with each request user makes. Requests without a personal API key are limitted on IP-basis, meaning that there may be up to requests from 1 IP address within 1 minute.
Generate Api Key
In case when API calls are made using client javascript scripts, it doesn't make sense to use API key, cause API calls are made from visitor's web browsers with visitor's IP. In such case it's recommended not to use API key.
API calls Project/Properties Description
Fetches information about a specific project
URL
2 ways to address this call:
project/.(json|xml) - Using this URL, ID of the project is included in URL directly without parameters
project/properties.(json|xml) - Using this URL, ID of the project should be specified in parameter id
Parameters
- id
- ID of project (required)
Returned results
- project
- id - ID of the project
- name - title of the project
- url - URL of the project
- start_date - date when the project was started
- start_unixtime - time when project was started in UNIXTIME format
- end_date - date when the project bidding period ends
- end_unixtime - time when the project bidding period ends in UNIXTIME format
- buyer
- id - ID of the buyer's username
- url - URL of the buyer's profile
- username - username of the buyer
- description - description of the project's requirements
- options
- featured - boolean value. 1 if project is featured, 0 - only normal projects
- for_premier_members - boolean
- fulltime - boolean
- parttime - boolean
- commission - boolean
- budget
- min - Numeric double value or empty (false) if no minimum is specified
- max - Numeric double value or empty (false) if no maximum is specified
- jobs
- bid_stats
- count - number of bids or empty (false) if bid statistics is not available
Samples
API Call: api/project/1.xml
API Call: api/project/1.json
Project/Search Description
Searches projects by different search parameters
URL
api/project/search.(json|xml)
Parameters
- owner
- Username of ID of project owner (optional)
- jobs[]
- Names of job categories from the available list on Ufathom (PHP, .NET, AJAX, etc.). This parameter may be repeated more than once (optional)
- featured
- If 1 - only featured projects, if 0 - only NON-featured projects (optional)
- premier
- If 1 - only "For premier members" projects, if 0 - only NON "For premier members" projects (optional)
- min_budget
- Only projects with budget higher or equal to min_budget (optional)
- max_budget
- Only projects with budget lower or equal to max_budget (optional)
- keyword
- Search by keyword (optional)
- order
- How to order projects in the result output. See available project order criteria.
- order_dir
- Direction of sorting. If the parameter is equal to asc, results are ordered in ascending way, otherwise - descending (desc).
Returned results
- project
- count
- items
- Array of item
- id - ID of a project
- name - title of the project
- url - URL of the project
- start_unixtime - time when the project was started in UNIXTIME format
- start_date - time when the project was started
- end_unixtime - time when the project bidding period ends in UNIXTIME format
- end_date - time when the project bidding period ends in RFC 2822 format
- buyer
- id - ID of the buyer's username
- url - URL of the buyer's profile
- username - username of the buyer
- description - description of the project's requirements
- options
- featured - boolean value. 1 if project is featured, 0 - only normal projects
- for_premier_members - boolean
- fulltime - boolean
- parttime - boolean
- commission - boolean
- budget
- min - Numeric double value or empty (false) if no minimum is specified
- max - Numeric double value or empty (false) if no maximum is specified
- jobs
- bid_stats
- count - number of bids or empty (false) if bid statistics is not available
Samples
API Call: api/project/Search.xml
API Call: api/project/Search.json?jobs[]=php&jobs[]=html
Project order criteria - id - order by project ID
- submitdate - order by date when project was added (default)
- bid_enddate - order by bidding end time
- buyer - order by buyer's username
- budget - order by budget
- bid_count - order by number of bids
- rand - order randomly
User/Properties Description
Fetches information about a specific user
URL
2 ways to address this call:
api/user/.(json|xml) - Using this URL, ID of the project is included in URL directly without parameters
api/user/Properties.(json|xml) - Using this URL, ID of the project should be specified in parameter id
Parameters
- id
- username of user (required)
Returned results
- profile
- url - url of the user
- id - ID of the user
- username - Username
- logo_url - URL of logo
- reg_unixtime - time when the user was registered in UNIXTIME format
- reg_date - date when the user was registered
- company - company name or false if company is not specified
- premier - 1 if the user is a premier member currently, 0 - a non-premier member
- address
- country - User's country
- city - User's city
- hourlyrate - Hourly rate in USD
- rating
- avg - average value of user overral rating, double value from 1 to 10 (i.e. up to 2 digits after the decimal point). 0 - if user hasn't got any rating yet
- count - number of feedbacks received by user
- provider_rating
- avg - average value of provider rating, double value from 1 to 10. 0 - if user hasn't got any rating yet
- count - number of provider feedbacks received by user
- buyer_rating
- avg - average value of buyer rating, double value from 1 to 10. 0 - if user hasn't got any rating yet
- count - number of buyer feedbacks received by user
- jobs
Samples
API Call: api/User/Properties.xml?id=avijit
API Call: api/User/Properties.json?id=avijit
Feedback/Search Description
Searches feedbacks by different search parameters
URL
api/feedback/Search.(json|xml)
Parameters
- user
- username of a feedback receiver (required)
- project_id
- ID of project for which the feedback was made (optional)
- order
- How to order feedbacks in result output. See available feedback order criteria.
- order_dir
- Direction of sorting. If the parameter is equal to asc, results are ordered in ascending way, otherwise - descending ('desc').
Returned results
- feedbacks
- count
- items
- Array of item
- project
- id - ID of a project
- name - title of a project
- url - URL of a project
- from_user
- url - URL of a user's profile
- id - ID of a user, who left a feedback
- username - user, who left a feedback
- active_unixtime - time when feedback was published in UNIXTIME format
- active_date - time when feedback was published in RFC 2822 format
- rating - value of rating from 1 to 10.
- descr - text of a feedback
- comment - comment on a feedback left by a feedback receiver
- bid - provider's offer and price
- amount - price for doing the project from a project winner bid
- period - delivery of project in days according to the winning bid
- user
- url - URL of user profile
- id - ID of a user who received feedbacks
- username - username of feedbacks receiver
- url - URL of feedback page
Samples
API Call: