Getting started
First things first, you’ll need to request an API key so we can understand what you want to build and ensure we can make it happen.
Briefs
The following API calls are for unauthenticated users and therefore will require that the end user come to 99designs to create an account (or log into an existing one). Each will provide a response with the appropriate URL to allow the end user to do so.
Create a brief
Example request:
curl -X POST https://api.99designs.com/resources/v1/briefs -H "Content-Type:application/json" -d '{"category": "product-packaging","title": "Packaging for The Organic Juicy Fruits Company","description": "I need a package designed for a new flavor of organic juice.","profileApproval": false,"industry": "accounting","inspirationUrls": ["https://example.org/example1","https://example.org/example2"],"budget": {"value": 10000,"currency": "USD"},"other": "","timeframe": {"value": "specific_dates","startDate": "2018-01-20T00:00:00+0500","endDate": "2018-01-20T00:00:00+0500"},"urls": [""],"usage": "Billboards, flyers, and magazines","language": "de"}'
Body parameters:
categorystring | What type of design do you need? e.g. Values3d-designalbum-cover-designapp-designart-illustrationbanner-ad-designbook-cover-designbook-magazine-designbrand-guidebrand-identity-packbrochure-designbusiness-advertisingbusiness-card-designbuttons-iconscar-truck-van-wrap-designcard-invitation-designcharacter-mascot-designclothing-apparel-designclothing-merchandise-designcup-mug-designcustom-wordpress-themesemail-designfacebook-adfacebook-cover-designflash-animationflash-banner-designicon-button-designillustrationsinfographic-designlanding-page-designlogologo-brand-guidelogo-business-card-designlogo-designlogo-product-packaginglogo-websitemagazine-cover-designmenu-designmerchandise-designmobile-app-designnationbuilderotherother-art-illustrationother-book-magazine-designother-business-advertisingother-clothing-merchandise-designother-designother-design-tasksother-packaging-label-designother-website-app-designpackaging-label-designpodcast-cover-designpostcard-flyer-designposter-designpowerpoint-template-designprezi-designprint-designproduct-label-designproduct-packaging-designquickbooks-form-designsignage-designsocial-media-packsocial-media-page-designsquare-online-storesquarespacestationery-designsticker-designt-shirt-designtattoo-designtwitter-background-designtypesettingtypesetting-with-imageryweb-builderweb-designweb-design-codedwebsite-app-designwix-websitewordpress-theme-designzoom-background-design | ||||||
titlestring | What's the name of your project? e.g. | ||||||
descriptionstring | Describe your project e.g. | ||||||
profileApprovalboolean | Can your designer showcase the finished designs in their 99designs portfolio? | ||||||
industrystring | What industry are you in? Valuesaccountingagricultureanimalsarchitecturalartattorneyautomotivebarbusinesschildrencleaningcommunicationscommunitycomputerconstructioncosmeticsdatingeducationentertainmentenvironmentfashionfloralfoodgameshomeindustrialinternetlandscapingmedicalotherphotographyphysicalpoliticsrealestatereligiousrestaurantretailsecurityspasportstechnologytravelwedding | ||||||
inspirationUrlsarray | Inspiration on the web e.g. [
"https://example.org/example1",
"https://example.org/example2"
] | ||||||
budgetobject | Client budget
| ||||||
otherstring | Anything else you'd like to share with your designer? | ||||||
timeframeobject | Project timeframe
| ||||||
urlsarray | Your website and/or social media pages | ||||||
usagestring | How will your design be used? e.g. | ||||||
languagestring | Valuesdeenesfritjanlpt |
Example response(s):
201Created brief
{"id": "abc123","briefUrl": "99designs.com/briefs/abc123"}
400Validation error(s)
{"errors": [{"path": "/briefs","message": "Invalid timeframe"}]}
Designers
Search designers
Example request:
curl -X POST https://api.99designs.com/resources/v1/designers -H "Content-Type:application/json" -d '{"certifications": [""],"category": ["3d-design"],"industry": ["accounting"],"language": ["de"],"designerLevel": ["entry"],"lastActivity": "online_now","designLimit": 10,"keywordQuery": "","pageSize": 30,"page": 1,"country": ["US","AU"]}'
Body parameters:
certificationsarray | Filter designers based on certifications |
categoryarray | Design category (one or more) Values3d-designalbum-cover-designapp-designart-illustrationbanner-ad-designbook-cover-designbook-magazine-designbrand-guidebrand-identity-packbrochure-designbusiness-advertisingbusiness-card-designbuttons-iconscar-truck-van-wrap-designcard-invitation-designcharacter-mascot-designclothing-apparel-designclothing-merchandise-designcup-mug-designcustom-wordpress-themesemail-designfacebook-adfacebook-cover-designflash-animationflash-banner-designicon-button-designillustrationsinfographic-designlanding-page-designlogologo-brand-guidelogo-business-card-designlogo-designlogo-product-packaginglogo-websitemagazine-cover-designmenu-designmerchandise-designmobile-app-designnationbuilderotherother-art-illustrationother-book-magazine-designother-business-advertisingother-clothing-merchandise-designother-designother-design-tasksother-packaging-label-designother-website-app-designpackaging-label-designpodcast-cover-designpostcard-flyer-designposter-designpowerpoint-template-designprezi-designprint-designproduct-label-designproduct-packaging-designquickbooks-form-designsignage-designsocial-media-packsocial-media-page-designsquare-online-storesquarespacestationery-designsticker-designt-shirt-designtattoo-designtwitter-background-designtypesettingtypesetting-with-imageryweb-builderweb-designweb-design-codedwebsite-app-designwix-websitewordpress-theme-designzoom-background-design |
industryarray | Industry (one or more) Valuesaccountingagricultureanimalsarchitecturalartattorneyautomotivebarbusinesschildrencleaningcommunicationscommunitycomputerconstructioncosmeticsdatingeducationentertainmentenvironmentfashionfloralfoodgameshomeindustrialinternetlandscapingmedicalotherphotographyphysicalpoliticsrealestatereligiousrestaurantretailsecurityspasportstechnologytravelwedding |
languagearray | Designer language (one or more) Valuesdeenesfritjanlpt |
designerLevelarray | Designer level Valuesentrymidtop |
lastActivitystring | Filter designers based on their last login time Valuesonline_nowwithin_7_days |
designLimitinteger | Maximum number of example designs per designer e.g. |
keywordQuerystring | Keyword for filtering results |
pageSizeinteger | Maximum number of designers to return per page (defaults to 30) e.g. |
pageinteger | Page of the results e.g. |
countryarray | Filter designers based on ISO alpha-2 country codes i.e. (US, AU, DE) e.g. [
"US",
"AU"
] |
Example response(s):
200An array of designers
{"totalPages": 10,"totalResults": 100,"designers": [{"id": 1,"coverImageUrl": "https://images-platform.99static.com/99designs-profiles/cover-images-v2/123123/123abc.jpg","biography": "Professional brand designer.","avatarUrl": "https://99designs.com/avatars/users/1/128","displayName": "DesignerAllTheThings","lastSeenAt": "2019-01-01T00:00:00Z","designs": [{"description": "Logo for a cool company","id": 123123,"imageUrl": "http://s3.amazonaws.com/projects-files/1/123/456/123abc.png","title": "Cool company","tags": ["technology"]}],"designerLevel": "TOP","expertiseCategories": ["logo-design","web-design"],"review": {"count": 100,"rating": 5},"repeatCount": 20,"completedProjectsCount": 50}]}
400Bad input
{"message": "An error has occurred"}
Get designer by ID
Example request:
curl -X GET https://api.99designs.com/resources/v1/designers/{designerId}
Path parameters:
designerIdinteger | ID of the designer |
Example response(s):
200A designer
{"id": 1,"coverImageUrl": "https://images-platform.99static.com/99designs-profiles/cover-images-v2/123123/123abc.jpg","biography": "Professional brand designer.","avatarUrl": "https://99designs.com/avatars/users/1/128","displayName": "DesignerAllTheThings","lastSeenAt": "2019-01-01T00:00:00Z","designs": [{"description": "Logo for a cool company","id": 123123,"imageUrl": "http://s3.amazonaws.com/projects-files/1/123/456/123abc.png","title": "Cool company","tags": ["technology"]}],"designerLevel": "TOP","expertise": [""],"expertiseCategories": ["logo-design","web-design"],"review": {"rating": 5,"count": 100},"reviews": [{"rating": 5,"message": "This was a fantastic designer to work with!","displayName": "EmilyBakes"}],"country": "AU","repeatCount": 20,"responsivenessScore": 92.5,"completedProjectsCount": 50,"isAvailable": false,"workPreferences": {"squarespace": ["DESIGN"]},"certifications": [""],"isBoosted": false}
400Bad input
{"message": "An error has occurred"}
404Not found
{"message": "An error has occurred"}
Get designer reviews
Example request:
curl -X GET https://api.99designs.com/resources/v1/designers/{designerId}/reviews?page=&pageSize=
Path parameters:
designerIdinteger | ID of the designer |
Query parameters:
pageinteger | Page number |
pageSizeinteger | Page size limit |
Example response(s):
200Reviews
{"totalPages": 10,"totalResults": 100,"reviews": [{"rating": 5,"message": "This was a fantastic designer to work with!","displayName": "EmilyBakes"}]}
Get portfolio designs
Example request:
curl -X GET https://api.99designs.com/resources/v1/designers/{designerId}/designs?page=&pageSize=&category=
Path parameters:
designerIdinteger | ID of the designer |
Query parameters:
pageinteger | Page Number |
pageSizeinteger | Page size limit |
categoryarray | Design category (one or more) Values3d-designalbum-cover-designapp-designart-illustrationbanner-ad-designbook-cover-designbook-magazine-designbrand-guidebrand-identity-packbrochure-designbusiness-advertisingbusiness-card-designbuttons-iconscar-truck-van-wrap-designcard-invitation-designcharacter-mascot-designclothing-apparel-designclothing-merchandise-designcup-mug-designcustom-wordpress-themesemail-designfacebook-adfacebook-cover-designflash-animationflash-banner-designicon-button-designillustrationsinfographic-designlanding-page-designlogologo-brand-guidelogo-business-card-designlogo-designlogo-product-packaginglogo-websitemagazine-cover-designmenu-designmerchandise-designmobile-app-designnationbuilderotherother-art-illustrationother-book-magazine-designother-business-advertisingother-clothing-merchandise-designother-designother-design-tasksother-packaging-label-designother-website-app-designpackaging-label-designpodcast-cover-designpostcard-flyer-designposter-designpowerpoint-template-designprezi-designprint-designproduct-label-designproduct-packaging-designquickbooks-form-designsignage-designsocial-media-packsocial-media-page-designsquare-online-storesquarespacestationery-designsticker-designt-shirt-designtattoo-designtwitter-background-designtypesettingtypesetting-with-imageryweb-builderweb-designweb-design-codedwebsite-app-designwix-websitewordpress-theme-designzoom-background-design |
Example response(s):
200Designs
{"totalPages": 10,"totalResults": 100,"designs": [{"description": "Logo for a cool company","id": 123123,"imageUrl": "http://s3.amazonaws.com/projects-files/1/123/456/123abc.png","title": "Cool company","tags": ["technology"]}]}
Coupons
Generate a new partner coupon
Example request:
curl -X POST https://api.99designs.com/resources/v1/coupons -H "Content-Type:application/json" -d '{"aud": "partner-july-2020","sub": "client@example.com","jti": "WP6345789","exp": 0,"nbf": 0}'
Body parameters:
audstring | Name of the campaign the token relates to. This will be provided by 99designs for your specific campaign. e.g. |
substring | Identify the user for which this token relates to. This can be any identifier the partner wishes to provide. One or both of sub or jit are required. e.g. |
jtistring | Identify a specific token. This can be any unique-per-token identifier the partner wishes to provide. One or both of sub or jit are required. e.g. |
expinteger | UNIX timestamp after which the coupon can no longer be used. |
nbfinteger | UNIX timestamp before which the coupon can not be used. |
Example response(s):
200Generated Coupon
{"jwt": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJFblkyZWltRFdSIiwiYXVkIjoiSnVsIDIwMjAgQ2FtcGFpZ24iLCJzdWIiOiJjbGllbnRAZXhhbXBsZS5jb20iLCJqdGkiOiJXUDYzNDU3ODkiLCJleHAiOjE1OTQ0MzI5MzIxMjIsIm5iZiI6MTU5MTg0MDk2NTU5NX0.WlWgO9LAsTYCzAkqt-0G3rBYgGlhiHYD61IQNozowH0","url": "http://99designs.com/briefs/partner/create?pc=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJFblkyZWltRFdSIiwiYXVkIjoiSnVsIDIwMjAgQ2FtcGFpZ24iLCJzdWIiOiJjbGllbnRAZXhhbXBsZS5jb20iLCJqdGkiOiJXUDYzNDU3ODkiLCJleHAiOjE1OTQ0MzI5MzIxMjIsIm5iZiI6MTU5MTg0MDk2NTU5NX0.WlWgO9LAsTYCzAkqt-0G3rBYgGlhiHYD61IQNozowH0","couponId": "c4e49b29-6281-4551-97de-984d39a75425"}
400Bad request
{"message": "An error has occurred"}