Behance hub

Behance Profile API

One handle in, a person or team profile out: stats, location, availability, links, work history, tools, features and projects.

GET /v1/behance/profiles/{username}

1 credit Failed requests are free

About this endpoint

GET /v1/behance/profiles/{username} takes the handle from the profile URL, for example chrisd3b8, and returns data.lookupStatus plus data.profile. A found profile carries kind (person or team), id, username, displayName, url, occupation, company, website, location, createdAt, images, stats (views, appreciations, followers, following), about, socialLinks, links, workExperience, availability, tools, teams, features, fields, milestones, freelance, creatorPro, sections, projects and projectsHasMore.

location carries text, country, countryCode (ISO 3166-1 alpha-2), city and state when they are available. A team profile also carries members, each with its own identity, location, stats and creative fields, and inviteOnly. A team's About sections, social links, web links, fields and gallery features are exposed when the profile has them. A missing handle returns lookupStatus: not_found with profile: null. The profile carries a limited number of projects; projectsHasMore says whether more exist, but no next cursor is exposed for them.

Behance Profile API FAQ

How do I pass the handle?

Use the handle as it appears in the profile URL, for example chrisd3b8. Handles are case-insensitive. A full URL, a numeric user id or a reserved site path such as about is not a handle.

Does this work for team profiles?

Yes. Read data.profile.kind: person or team. A team carries members, inviteOnly, its About sections, social and web links, creative fields, gallery features and projects.

What stats and hire fields are included?

data.profile.stats carries views, appreciations, followers, following, comments, projects, members, jobs, wips and hideFollowing where available. availability carries freelance, fullTime, remote, relocation, timeline, budgetMin, compensationMin, currency and enforceMinBudget. Null means the value is not available.

What does location.countryCode contain?

The ISO 3166-1 alpha-2 code for the profile's country, for example US or RU. location.country carries the country name when it is available; city and state are filled when they are known.

What happens when a handle does not exist?

The response is still HTTP 200, with data.lookupStatus set to not_found and data.profile set to null. Branch on lookupStatus rather than on the HTTP status.

How many credits does a profile lookup cost?

Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged: that field is the billing source of truth.