kevinbarnett / gatsby-source-greenhouse-job-board

Source plugin for pulling offices, departments, and jobs into Gatsby from the Greenhouse Job Board API. It creates links between all entities so they can be queried in Gatsby using GraphQL.
5 stars 13 forks source link

Fetch many boards #2

Open micaelr95 opened 4 years ago

micaelr95 commented 4 years ago

This PR will add the ability to fetch data from multiple boards

micaelr95 commented 4 years ago

@kevinbarnett Can I get this PR merged?

kevinbarnett commented 4 years ago

Cool idea, @micaelr95 ! Here are some suggestions that I would prefer to see before considering a merge on this PR:

micaelr95 commented 4 years ago

Hey @kevinbarnett . Thank you so much for the comment.

Can you elaborate on the last point?

Edit: I already added the two first points. Can you check if that's what you wanted?

kevinbarnett commented 4 years ago

@micaelr95 your changes that address the first two points look good.

On the last point, I would recommend pulling from two Greenhouse boards you are not familiar with (hint: you can look at Greenhouse's homepage and look for customer logos; these can be used to infer what the boardToken is for those customers).

After pulling from multiple boards, how can you tell which job/department/office is related or not related to the same board?

I believe a new node – greenhouseBoard – needs to be added and linked to the other nodes.

This should illustrate the use case I'm thinking of (assuming you have built a Gatsby site with multiple boards):

http://localhost:8000/___graphql?query=query%20MyQuery%20%7B%0A%20%20allGreenhouseJob%20%7B%0A%20%20%20%20edges%20%7B%0A%20%20%20%20%20%20node%20%7B%0A%20%20%20%20%20%20%20%20id%0A%20%20%20%20%20%20%20%20offices%20%7B%0A%20%20%20%20%20%20%20%20%20%20name%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20title%0A%20%20%20%20%20%20%20%20departments%20%7B%0A%20%20%20%20%20%20%20%20%20%20id%0A%20%20%20%20%20%20%20%20%20%20name%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%20%20%7D%0A%7D%0A