ClassicSmileyFace

Open and freely available data set of all parts/pieces?

Recommended Posts

Is there resource where I can get a data set (or database) of all Lego parts? Part number, name/description, color. Images would be a nice bonus too. Preferably free and open to use.

I have an idea for a coding project, but it would need this data. I know BrickLink, BrickSet, LDD, Peeron, etc... all have or use this data on their websites/apps. But is there a way to get this data from them to use on my own? In a legal manner and complying to the source's terms and conditions, of course.

Share this post


Link to post
Share on other sites

Thanks, those links are really helpful!

I was doing some research on my own, and I found that LDraw also has a lot of the parts available for download too. And it looks like Rebrickable's data is built from LDraw's.

Share this post


Link to post
Share on other sites
7 hours ago, ClassicSmileyFace said:

Thanks, those links are really helpful!

I was doing some research on my own, and I found that LDraw also has a lot of the parts available for download too. And it looks like Rebrickable's data is built from LDraw's.

Depends on what you mean. If you mean images: as far as I know Rebrickable uses Lego's own images as much as possible, but when they aren't available they use rendered LDraw parts. However, the download page I linked includes only LDraw images I believe.

If you mean part data: well, Rebrickable's own data is a bit of a weird one. It started out as a copy of Bricklink, then they got into trouble with Bricklink, started to copy LDraw part numbering for patterned parts and then developed their own patterned parts numbers. They still use the 'official' part numbers for normal parts (BrickOwl came up with a complete arbitrary part number system after the Bricklink issue). But, Rebrickable does have an extensive part number mapping system, mapping different sources (LDraw, Bricklink, Rebrickable, Brickowl etc.), I don't believe that's included in the download though, but maybe it is through their API?

Share this post


Link to post
Share on other sites
On 9/27/2016 at 10:11 AM, Superkalle said:

Brickset has a part database that is collected from TLG, and made available via an API. Not sure if/how it's usable for other purposes and what the conditions are. 

But I guess since Brickset managed to harvest it from LEGO, it should be possible for anyone to do the same.

Looks like Brickset's API doesn't provide the parts data. From their API page:

Quote

We are unable to provide an API for minifigs (data and images belong to BrickLink) or parts (data and images belong to LEGO).

I think that's what I wanted when I started the question, an official source for parts (data and images). But it seems like all the available data sets out there are based on community contributions.

Share this post


Link to post
Share on other sites
On 9/27/2016 at 2:52 AM, legolijntje said:

Depends on what you mean. If you mean images: as far as I know Rebrickable uses Lego's own images as much as possible, but when they aren't available they use rendered LDraw parts.

Ok, but what I can't seem to find is where Rebrickable gets these images from Lego. Lego themselves don't seem to provide any API or downloads from what I can tell.

On 9/27/2016 at 2:52 AM, legolijntje said:

If you mean part data: well, Rebrickable's own data is a bit of a weird one. It started out as a copy of Bricklink, then they got into trouble with Bricklink, started to copy LDraw part numbering for patterned parts and then developed their own patterned parts numbers. They still use the 'official' part numbers for normal parts (BrickOwl came up with a complete arbitrary part number system after the Bricklink issue). 

Yeah I came across that story. It seems a shame that BrickLink did that, especially since their data seems to come from user contributions as well. It seems like the Lego community has become fragmented when it comes to this data. By my counts, BrickLink, Peeron, LUGNET, Rebrickable, BrickSet, BrickOwl, and LDraw all maintain a version of this data. At least Rebrickable has done the work to map a lot of this data. I just wish there was a more official/authoritative source for this data.

On 9/27/2016 at 2:52 AM, legolijntje said:

But, Rebrickable does have an extensive part number mapping system, mapping different sources (LDraw, Bricklink, Rebrickable, Brickowl etc.), I don't believe that's included in the download though, but maybe it is through their API?

Looks like they do. The get_part function returns external_part_ids, which is "Array of related Part IDs used by external systems".

Share this post


Link to post
Share on other sites
4 minutes ago, ClassicSmileyFace said:

By my counts, BrickLink, Peeron, LUGNET, Rebrickable, BrickSet, BrickOwl, and LDraw all maintain a version of this data.

To be fair, LDraw’s purpose is different, so it’s logical some differences should appear.

Then, a lot of those DBs were built upon each other. But they were updated in parallel, either by happensance (or “death,” like Peeron’s), or on purpose (frictions between communities/goals). It seems re-syncing them isn’t really an option anymore.

Also note that Brickset’s DB is LEGO’s: they don’t care about old parts, or variants. Suitable for LEGO’s production, less for MOCers, not at all for collectors. (And, AFAIK, they download things from LEGO directly. So an API does exist.)

Share this post


Link to post
Share on other sites

It looks like Bricklink is happy to share its DB until you start making money out of it.

I remember Bricklink had issues with BrickOwl so they split their DBs. However I wasn't aware of issue with Rebrickable? They seem to be in good relations - having URL's for parts in each direction.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.