diff --git a/README.md b/README.md
index 40897e0..5f9ed8e 100644
--- a/README.md
+++ b/README.md
@@ -283,7 +283,7 @@ agree, it’s ugly.
## Schema
-See the [GraphQL schema][schema].
+See the [GraphQL schema][schema] or the [rendered documentation][types].
[demo]: https://graphbrainz.herokuapp.com/
[Express]: http://expressjs.com/
@@ -294,4 +294,5 @@ See the [GraphQL schema][schema].
[debug]: https://www.npmjs.com/package/debug
[GraphiQL]: https://github.com/graphql/graphiql
[Relay]: https://facebook.github.io/relay/
-[schema]: schema.md
+[schema]: doc/schema.md
+[types]: doc/types.md
diff --git a/schema.md b/doc/schema.md
similarity index 96%
rename from schema.md
rename to doc/schema.md
index 34a9820..2c211af 100644
--- a/schema.md
+++ b/doc/schema.md
@@ -72,7 +72,16 @@ type Area implements Node, Entity {
places(after: String, first: Int): PlaceConnection
# A list of releases linked to this entity.
- releases(after: String, first: Int, type: [ReleaseGroupType], status: [ReleaseStatus]): ReleaseConnection
+ releases(
+ after: String
+ first: Int
+
+ # Filter by one or more release group types.
+ type: [ReleaseGroupType]
+
+ # Filter by one or more release statuses.
+ status: [ReleaseStatus]
+ ): ReleaseConnection
# Relationships between this entity and other entitites.
relationships: Relationships
@@ -173,10 +182,25 @@ type Artist implements Node, Entity {
recordings(after: String, first: Int): RecordingConnection
# A list of releases linked to this entity.
- releases(after: String, first: Int, type: [ReleaseGroupType], status: [ReleaseStatus]): ReleaseConnection
+ releases(
+ after: String
+ first: Int
+
+ # Filter by one or more release group types.
+ type: [ReleaseGroupType]
+
+ # Filter by one or more release statuses.
+ status: [ReleaseStatus]
+ ): ReleaseConnection
# A list of release groups linked to this entity.
- releaseGroups(after: String, first: Int, type: [ReleaseGroupType]): ReleaseGroupConnection
+ releaseGroups(
+ after: String
+ first: Int
+
+ # Filter by one or more release group types.
+ type: [ReleaseGroupType]
+ ): ReleaseGroupConnection
# A list of works linked to this entity.
works(after: String, first: Int): WorkConnection
@@ -616,7 +640,16 @@ type Label implements Node, Entity {
typeID: MBID
# A list of releases linked to this entity.
- releases(after: String, first: Int, type: [ReleaseGroupType], status: [ReleaseStatus]): ReleaseConnection
+ releases(
+ after: String
+ first: Int
+
+ # Filter by one or more release group types.
+ type: [ReleaseGroupType]
+
+ # Filter by one or more release statuses.
+ status: [ReleaseStatus]
+ ): ReleaseConnection
# Relationships between this entity and other entitites.
relationships: Relationships
@@ -654,8 +687,13 @@ type LabelEdge {
# Fields indicating the begin and end date of an entity’s
# lifetime, including whether it has ended (even if the date is unknown).
type LifeSpan {
+ # The start date of the entity’s life span.
begin: Date
+
+ # The end date of the entity’s life span.
end: Date
+
+ # Whether or not the entity’s life span has ended.
ended: Boolean
}
@@ -899,7 +937,16 @@ type Recording implements Node, Entity {
artists(after: String, first: Int): ArtistConnection
# A list of releases linked to this entity.
- releases(after: String, first: Int, type: [ReleaseGroupType], status: [ReleaseStatus]): ReleaseConnection
+ releases(
+ after: String
+ first: Int
+
+ # Filter by one or more release group types.
+ type: [ReleaseGroupType]
+
+ # Filter by one or more release statuses.
+ status: [ReleaseStatus]
+ ): ReleaseConnection
# Relationships between this entity and other entitites.
relationships: Relationships
@@ -1296,7 +1343,13 @@ type Release implements Node, Entity {
recordings(after: String, first: Int): RecordingConnection
# A list of release groups linked to this entity.
- releaseGroups(after: String, first: Int, type: [ReleaseGroupType]): ReleaseGroupConnection
+ releaseGroups(
+ after: String
+ first: Int
+
+ # Filter by one or more release group types.
+ type: [ReleaseGroupType]
+ ): ReleaseGroupConnection
# Relationships between this entity and other entitites.
relationships: Relationships
@@ -1391,7 +1444,16 @@ type ReleaseGroup implements Node, Entity {
artists(after: String, first: Int): ArtistConnection
# A list of releases linked to this entity.
- releases(after: String, first: Int, type: [ReleaseGroupType], status: [ReleaseStatus]): ReleaseConnection
+ releases(
+ after: String
+ first: Int
+
+ # Filter by one or more release group types.
+ type: [ReleaseGroupType]
+
+ # Filter by one or more release statuses.
+ status: [ReleaseStatus]
+ ): ReleaseConnection
# Relationships between this entity and other entitites.
relationships: Relationships
diff --git a/doc/types.md b/doc/types.md
new file mode 100644
index 0000000..8e1d81e
--- /dev/null
+++ b/doc/types.md
@@ -0,0 +1,3850 @@
+# Schema Types
+
+You may also be interested in the [schema in GraphQL syntax](schema.md).
+
+**Table of Contents**
+
+
+
+
+
| Field / Argument | Type | Description | + +
|---|---|---|
| **node** | +[Node](#fixme) | +Fetches an object given its ID | +
| id | +[ID](#fixme)! | +The ID of an object | +
| **lookup** | +[LookupQuery](#fixme) | +Perform a lookup of a MusicBrainz entity by its MBID. | +
| **browse** | +[BrowseQuery](#fixme) | +Browse all MusicBrainz entities directly linked to another entity. | +
| **search** | +[SearchQuery](#fixme) | +Search for MusicBrainz entities using Lucene query syntax. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **name** | +[String](#fixme) | +The aliased name of the entity. | +
| **sortName** | +[String](#fixme) | +The string to use for the purpose of ordering by name (for +example, by moving articles like ‘the’ to the end or a person’s last name to +the front). | +
| **locale** | +[String](#fixme) | +The locale (language and/or country) in which the alias is +used. | +
| **primary** | +[Boolean](#fixme) | +Whether this is the main alias for the entity in the +specified locale (this could mean the most recent or the most common). | +
| **type** | +[String](#fixme) | +The type or purpose of the alias – whether it is a variant, +search hint, etc. | +
| **typeID** | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| Field / Argument | Type | Description | + +
|---|---|---|
| **id** | +[ID](#fixme)! | +The ID of an object | +
| **mbid** | +[MBID](#fixme)! | +The MBID of the entity. | +
| **name** | +[String](#fixme) | +The official name of the entity. | +
| **sortName** | +[String](#fixme) | +The string to use for the purpose of ordering by name (for +example, by moving articles like ‘the’ to the end or a person’s last name to +the front). | +
| **disambiguation** | +[String](#fixme) | +A comment used to help distinguish identically named entitites. | +
| **aliases** | +[[Alias](#fixme)] | +Aliases are used to store +alternate names or misspellings. | +
| **isoCodes** | +[[String](#fixme)] | +ISO 3166 codes are +the codes assigned by ISO to countries and subdivisions. | +
| **artists** | +[ArtistConnection](#fixme) | +A list of artists linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **events** | +[EventConnection](#fixme) | +A list of events linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **labels** | +[LabelConnection](#fixme) | +A list of labels linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **places** | +[PlaceConnection](#fixme) | +A list of places linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **releases** | +[ReleaseConnection](#fixme) | +A list of releases linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| type | +[[ReleaseGroupType](#fixme)] | +Filter by one or more release group types. | +
| status | +[[ReleaseStatus](#fixme)] | +Filter by one or more release statuses. | +
| **relationships** | +[Relationships](#fixme) | +Relationships between this entity and other entitites. | +
| **tags** | +[TagConnection](#fixme) | +A list of tags linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| Field / Argument | Type | Description | + +
|---|---|---|
| **pageInfo** | +[PageInfo](#fixme)! | +Information to aid in pagination. | +
| **edges** | +[[AreaEdge](#fixme)] | +A list of edges. | +
| **totalCount** | +[Int](#fixme) | +A count of the total number of items in this connection, +ignoring pagination. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **node** | +[Area](#fixme) | +The item at the end of the edge | +
| **cursor** | +[String](#fixme)! | +A cursor for use in pagination | +
| **score** | +[Int](#fixme) | +The relevancy score (0–100) assigned by the search engine, if +these results were found through a search. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **id** | +[ID](#fixme)! | +The ID of an object | +
| **mbid** | +[MBID](#fixme)! | +The MBID of the entity. | +
| **name** | +[String](#fixme) | +The official name of the entity. | +
| **sortName** | +[String](#fixme) | +The string to use for the purpose of ordering by name (for +example, by moving articles like ‘the’ to the end or a person’s last name to +the front). | +
| **disambiguation** | +[String](#fixme) | +A comment used to help distinguish identically named entitites. | +
| **aliases** | +[[Alias](#fixme)] | +Aliases are used to store +alternate names or misspellings. | +
| **country** | +[String](#fixme) | +The country with which an artist is primarily identified. It +is often, but not always, its birth/formation country. | +
| **area** | +[Area](#fixme) | +The area with which an artist is primarily identified. It +is often, but not always, its birth/formation country. | +
| **beginArea** | +[Area](#fixme) | +The area in which an artist began their career (or where +were born, if the artist is a person). | +
| **endArea** | +[Area](#fixme) | +The area in which an artist ended their career (or where +they died, if the artist is a person). | +
| **lifeSpan** | +[LifeSpan](#fixme) | +The begin and end dates of the entity’s existence. Its exact +meaning depends on the type of entity. | +
| **gender** | +[String](#fixme) | +Whether a person or character identifies as male, female, or +neither. Groups do not have genders. | +
| **genderID** | +[MBID](#fixme) | +The MBID associated with the value of the gender
+field. |
+
| **type** | +[String](#fixme) | +Whether an artist is a person, a group, or something else. | +
| **typeID** | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| **recordings** | +[RecordingConnection](#fixme) | +A list of recordings linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **releases** | +[ReleaseConnection](#fixme) | +A list of releases linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| type | +[[ReleaseGroupType](#fixme)] | +Filter by one or more release group types. | +
| status | +[[ReleaseStatus](#fixme)] | +Filter by one or more release statuses. | +
| **releaseGroups** | +[ReleaseGroupConnection](#fixme) | +A list of release groups linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| type | +[[ReleaseGroupType](#fixme)] | +Filter by one or more release group types. | +
| **works** | +[WorkConnection](#fixme) | +A list of works linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **relationships** | +[Relationships](#fixme) | +Relationships between this entity and other entitites. | +
| **tags** | +[TagConnection](#fixme) | +A list of tags linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| Field / Argument | Type | Description | + +
|---|---|---|
| **pageInfo** | +[PageInfo](#fixme)! | +Information to aid in pagination. | +
| **edges** | +[[ArtistEdge](#fixme)] | +A list of edges. | +
| **totalCount** | +[Int](#fixme) | +A count of the total number of items in this connection, +ignoring pagination. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **artist** | +[Artist](#fixme) | +The entity representing the artist referenced in the +credits. | +
| **name** | +[String](#fixme) | +The name of the artist as credited in the specific release, +track, etc. | +
| **joinPhrase** | +[String](#fixme) | +Join phrases might include words and/or punctuation to +separate artist names as they appear on the release, track, etc. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **node** | +[Artist](#fixme) | +The item at the end of the edge | +
| **cursor** | +[String](#fixme)! | +A cursor for use in pagination | +
| **score** | +[Int](#fixme) | +The relevancy score (0–100) assigned by the search engine, if +these results were found through a search. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **areas** | +[AreaConnection](#fixme) | +Browse area entities linked to the given arguments. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| collection | +[MBID](#fixme) | +The MBID of a collection in which the entity is found. | +
| **artists** | +[ArtistConnection](#fixme) | +Browse artist entities linked to the given arguments. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| area | +[MBID](#fixme) | +The MBID of an area to which the entity is linked. | +
| collection | +[MBID](#fixme) | +The MBID of a collection in which the entity is found. | +
| recording | +[MBID](#fixme) | +The MBID of a recording to which the entity is linked. | +
| release | +[MBID](#fixme) | +The MBID of a release to which the entity is linked. | +
| releaseGroup | +[MBID](#fixme) | +The MBID of a release group to which the entity is linked. | +
| work | +[MBID](#fixme) | +The MBID of a work to which the artist is linked. | +
| **events** | +[EventConnection](#fixme) | +Browse event entities linked to the given arguments. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| area | +[MBID](#fixme) | +The MBID of an area to which the entity is linked. | +
| artist | +[MBID](#fixme) | +The MBID of an artist to which the entity is linked. | +
| collection | +[MBID](#fixme) | +The MBID of a collection in which the entity is found. | +
| place | +[MBID](#fixme) | +The MBID of a place to which the event is linked. | +
| **labels** | +[LabelConnection](#fixme) | +Browse label entities linked to the given arguments. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| area | +[MBID](#fixme) | +The MBID of an area to which the entity is linked. | +
| collection | +[MBID](#fixme) | +The MBID of a collection in which the entity is found. | +
| release | +[MBID](#fixme) | +The MBID of a release to which the entity is linked. | +
| **places** | +[PlaceConnection](#fixme) | +Browse place entities linked to the given arguments. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| area | +[MBID](#fixme) | +The MBID of an area to which the entity is linked. | +
| collection | +[MBID](#fixme) | +The MBID of a collection in which the entity is found. | +
| **recordings** | +[RecordingConnection](#fixme) | +Browse recording entities linked to the given arguments. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| artist | +[MBID](#fixme) | +The MBID of an artist to which the entity is linked. | +
| collection | +[MBID](#fixme) | +The MBID of a collection in which the entity is found. | +
| release | +[MBID](#fixme) | +The MBID of a release to which the entity is linked. | +
| **releases** | +[ReleaseConnection](#fixme) | +Browse release entities linked to the given arguments. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| area | +[MBID](#fixme) | +The MBID of an area to which the entity is linked. | +
| artist | +[MBID](#fixme) | +The MBID of an artist to which the entity is linked. | +
| collection | +[MBID](#fixme) | +The MBID of a collection in which the entity is found. | +
| label | +[MBID](#fixme) | +The MBID of a label to which the release is linked. | +
| track | +[MBID](#fixme) | +The MBID of a track that is included in the release. | +
| trackArtist | +[MBID](#fixme) | +The MBID of an artist that appears on a track in the +release, but is not included in the credits for the release itself. | +
| recording | +[MBID](#fixme) | +The MBID of a recording to which the entity is linked. | +
| releaseGroup | +[MBID](#fixme) | +The MBID of a release group to which the entity is linked. | +
| **releaseGroups** | +[ReleaseGroupConnection](#fixme) | +Browse release group entities linked to the given arguments. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| artist | +[MBID](#fixme) | +The MBID of an artist to which the entity is linked. | +
| collection | +[MBID](#fixme) | +The MBID of a collection in which the entity is found. | +
| release | +[MBID](#fixme) | +The MBID of a release to which the entity is linked. | +
| **works** | +[WorkConnection](#fixme) | +Browse work entities linked to the given arguments. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| artist | +[MBID](#fixme) | +The MBID of an artist to which the entity is linked. | +
| collection | +[MBID](#fixme) | +The MBID of a collection in which the entity is found. | +
| **urls** | +[URLConnection](#fixme) | +Browse URL entities linked to the given arguments. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| resource | +[URLString](#fixme) | +The web address for which to browse URL entities. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **latitude** | +[Degrees](#fixme) | +The north–south position of a point on the Earth’s surface. | +
| **longitude** | +[Degrees](#fixme) | +The east–west position of a point on the Earth’s surface. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **id** | +[ID](#fixme)! | +The ID of an object | +
| **mbid** | +[MBID](#fixme)! | +The MBID of the entity. | +
| **name** | +[String](#fixme) | +The official name of the entity. | +
| **disambiguation** | +[String](#fixme) | +A comment used to help distinguish identically named entitites. | +
| **aliases** | +[[Alias](#fixme)] | +Aliases are used to store +alternate names or misspellings. | +
| **lifeSpan** | +[LifeSpan](#fixme) | +The begin and end dates of the entity’s existence. Its exact +meaning depends on the type of entity. | +
| **time** | +[Time](#fixme) | +The start time of the event. | +
| **cancelled** | +[Boolean](#fixme) | +Whether or not the event took place. | +
| **setlist** | +[String](#fixme) | +A list of songs performed, optionally including links to +artists and works. See the setlist documentation +for syntax and examples. | +
| **type** | +[String](#fixme) | +What kind of event the event is, e.g. concert, festival, etc. | +
| **typeID** | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| **relationships** | +[Relationships](#fixme) | +Relationships between this entity and other entitites. | +
| **tags** | +[TagConnection](#fixme) | +A list of tags linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| Field / Argument | Type | Description | + +
|---|---|---|
| **pageInfo** | +[PageInfo](#fixme)! | +Information to aid in pagination. | +
| **edges** | +[[EventEdge](#fixme)] | +A list of edges. | +
| **totalCount** | +[Int](#fixme) | +A count of the total number of items in this connection, +ignoring pagination. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **node** | +[Event](#fixme) | +The item at the end of the edge | +
| **cursor** | +[String](#fixme)! | +A cursor for use in pagination | +
| **score** | +[Int](#fixme) | +The relevancy score (0–100) assigned by the search engine, if +these results were found through a search. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **id** | +[ID](#fixme)! | +The ID of an object | +
| **mbid** | +[MBID](#fixme)! | +The MBID of the entity. | +
| **name** | +[String](#fixme) | +The official name of the entity. | +
| **disambiguation** | +[String](#fixme) | +A comment used to help distinguish identically named entitites. | +
| **aliases** | +[[Alias](#fixme)] | +Aliases are used to store +alternate names or misspellings. | +
| **description** | +[String](#fixme) | +A brief description of the main characteristics of the +instrument. | +
| **type** | +[String](#fixme) | +The type categorises the instrument by the way the sound is +created, similar to the Hornbostel-Sachs +classification. | +
| **typeID** | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| **relationships** | +[Relationships](#fixme) | +Relationships between this entity and other entitites. | +
| **tags** | +[TagConnection](#fixme) | +A list of tags linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| Field / Argument | Type | Description | + +
|---|---|---|
| **pageInfo** | +[PageInfo](#fixme)! | +Information to aid in pagination. | +
| **edges** | +[[InstrumentEdge](#fixme)] | +A list of edges. | +
| **totalCount** | +[Int](#fixme) | +A count of the total number of items in this connection, +ignoring pagination. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **node** | +[Instrument](#fixme) | +The item at the end of the edge | +
| **cursor** | +[String](#fixme)! | +A cursor for use in pagination | +
| **score** | +[Int](#fixme) | +The relevancy score (0–100) assigned by the search engine, if +these results were found through a search. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **id** | +[ID](#fixme)! | +The ID of an object | +
| **mbid** | +[MBID](#fixme)! | +The MBID of the entity. | +
| **name** | +[String](#fixme) | +The official name of the entity. | +
| **sortName** | +[String](#fixme) | +The string to use for the purpose of ordering by name (for +example, by moving articles like ‘the’ to the end or a person’s last name to +the front). | +
| **disambiguation** | +[String](#fixme) | +A comment used to help distinguish identically named entitites. | +
| **aliases** | +[[Alias](#fixme)] | +Aliases are used to store +alternate names or misspellings. | +
| **country** | +[String](#fixme) | +The country of origin for the label. | +
| **area** | +[Area](#fixme) | +The area in which the label is based. | +
| **lifeSpan** | +[LifeSpan](#fixme) | +The begin and end dates of the entity’s existence. Its exact +meaning depends on the type of entity. | +
| **labelCode** | +[Int](#fixme) | +The “LC” code +of the label. | +
| **ipis** | +[[IPI](#fixme)] | +List of IPI (interested party information) codes for the +label. | +
| **type** | +[String](#fixme) | +A type describing the main activity of the label, e.g. +imprint, production, distributor, rights society, etc. | +
| **typeID** | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| **releases** | +[ReleaseConnection](#fixme) | +A list of releases linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| type | +[[ReleaseGroupType](#fixme)] | +Filter by one or more release group types. | +
| status | +[[ReleaseStatus](#fixme)] | +Filter by one or more release statuses. | +
| **relationships** | +[Relationships](#fixme) | +Relationships between this entity and other entitites. | +
| **tags** | +[TagConnection](#fixme) | +A list of tags linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| Field / Argument | Type | Description | + +
|---|---|---|
| **pageInfo** | +[PageInfo](#fixme)! | +Information to aid in pagination. | +
| **edges** | +[[LabelEdge](#fixme)] | +A list of edges. | +
| **totalCount** | +[Int](#fixme) | +A count of the total number of items in this connection, +ignoring pagination. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **node** | +[Label](#fixme) | +The item at the end of the edge | +
| **cursor** | +[String](#fixme)! | +A cursor for use in pagination | +
| **score** | +[Int](#fixme) | +The relevancy score (0–100) assigned by the search engine, if +these results were found through a search. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **begin** | +[Date](#fixme) | +The start date of the entity’s life span. | +
| **end** | +[Date](#fixme) | +The end date of the entity’s life span. | +
| **ended** | +[Boolean](#fixme) | +Whether or not the entity’s life span has ended. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **area** | +[Area](#fixme) | +Look up a specific area by its MBID. | +
| mbid | +[MBID](#fixme)! | +The MBID of the entity. | +
| **artist** | +[Artist](#fixme) | +Look up a specific artist by its MBID. | +
| mbid | +[MBID](#fixme)! | +The MBID of the entity. | +
| **event** | +[Event](#fixme) | +Look up a specific event by its MBID. | +
| mbid | +[MBID](#fixme)! | +The MBID of the entity. | +
| **instrument** | +[Instrument](#fixme) | +Look up a specific instrument by its MBID. | +
| mbid | +[MBID](#fixme)! | +The MBID of the entity. | +
| **label** | +[Label](#fixme) | +Look up a specific label by its MBID. | +
| mbid | +[MBID](#fixme)! | +The MBID of the entity. | +
| **place** | +[Place](#fixme) | +Look up a specific place by its MBID. | +
| mbid | +[MBID](#fixme)! | +The MBID of the entity. | +
| **recording** | +[Recording](#fixme) | +Look up a specific recording by its MBID. | +
| mbid | +[MBID](#fixme)! | +The MBID of the entity. | +
| **release** | +[Release](#fixme) | +Look up a specific release by its MBID. | +
| mbid | +[MBID](#fixme)! | +The MBID of the entity. | +
| **releaseGroup** | +[ReleaseGroup](#fixme) | +Look up a specific release group by its MBID. | +
| mbid | +[MBID](#fixme)! | +The MBID of the entity. | +
| **series** | +[Series](#fixme) | +Look up a specific series by its MBID. | +
| mbid | +[MBID](#fixme)! | +The MBID of the entity. | +
| **url** | +[URL](#fixme) | +Look up a specific URL by its MBID. | +
| mbid | +[MBID](#fixme)! | +The MBID of the entity. | +
| **work** | +[Work](#fixme) | +Look up a specific work by its MBID. | +
| mbid | +[MBID](#fixme)! | +The MBID of the entity. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **hasNextPage** | +[Boolean](#fixme)! | +When paginating forwards, are there more items? | +
| **hasPreviousPage** | +[Boolean](#fixme)! | +When paginating backwards, are there more items? | +
| **startCursor** | +[String](#fixme) | +When paginating backwards, the cursor to continue. | +
| **endCursor** | +[String](#fixme) | +When paginating forwards, the cursor to continue. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **id** | +[ID](#fixme)! | +The ID of an object | +
| **mbid** | +[MBID](#fixme)! | +The MBID of the entity. | +
| **name** | +[String](#fixme) | +The official name of the entity. | +
| **disambiguation** | +[String](#fixme) | +A comment used to help distinguish identically named entitites. | +
| **aliases** | +[[Alias](#fixme)] | +Aliases are used to store +alternate names or misspellings. | +
| **address** | +[String](#fixme) | +The address describes the location of the place using the +standard addressing format for the country it is located in. | +
| **area** | +[Area](#fixme) | +The area entity representing the area, such as the city, in +which the place is located. | +
| **coordinates** | +[Coordinates](#fixme) | +The geographic coordinates of the place. | +
| **lifeSpan** | +[LifeSpan](#fixme) | +The begin and end dates of the entity’s existence. Its exact +meaning depends on the type of entity. | +
| **type** | +[String](#fixme) | +The type categorises the place based on its primary +function. | +
| **typeID** | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| **events** | +[EventConnection](#fixme) | +A list of events linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **relationships** | +[Relationships](#fixme) | +Relationships between this entity and other entitites. | +
| **tags** | +[TagConnection](#fixme) | +A list of tags linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| Field / Argument | Type | Description | + +
|---|---|---|
| **pageInfo** | +[PageInfo](#fixme)! | +Information to aid in pagination. | +
| **edges** | +[[PlaceEdge](#fixme)] | +A list of edges. | +
| **totalCount** | +[Int](#fixme) | +A count of the total number of items in this connection, +ignoring pagination. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **node** | +[Place](#fixme) | +The item at the end of the edge | +
| **cursor** | +[String](#fixme)! | +A cursor for use in pagination | +
| **score** | +[Int](#fixme) | +The relevancy score (0–100) assigned by the search engine, if +these results were found through a search. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **id** | +[ID](#fixme)! | +The ID of an object | +
| **mbid** | +[MBID](#fixme)! | +The MBID of the entity. | +
| **title** | +[String](#fixme) | +The official title of the entity. | +
| **disambiguation** | +[String](#fixme) | +A comment used to help distinguish identically named entitites. | +
| **aliases** | +[[Alias](#fixme)] | +Aliases are used to store +alternate names or misspellings. | +
| **artistCredit** | +[[ArtistCredit](#fixme)] | +The main credited artist(s). | +
| **length** | +[Int](#fixme) | +An approximation to the length of the recording, calculated +from the lengths of the tracks using it. | +
| **video** | +[Boolean](#fixme) | +Whether this is a video recording. | +
| **artists** | +[ArtistConnection](#fixme) | +A list of artists linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **releases** | +[ReleaseConnection](#fixme) | +A list of releases linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| type | +[[ReleaseGroupType](#fixme)] | +Filter by one or more release group types. | +
| status | +[[ReleaseStatus](#fixme)] | +Filter by one or more release statuses. | +
| **relationships** | +[Relationships](#fixme) | +Relationships between this entity and other entitites. | +
| **tags** | +[TagConnection](#fixme) | +A list of tags linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| Field / Argument | Type | Description | + +
|---|---|---|
| **pageInfo** | +[PageInfo](#fixme)! | +Information to aid in pagination. | +
| **edges** | +[[RecordingEdge](#fixme)] | +A list of edges. | +
| **totalCount** | +[Int](#fixme) | +A count of the total number of items in this connection, +ignoring pagination. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **node** | +[Recording](#fixme) | +The item at the end of the edge | +
| **cursor** | +[String](#fixme)! | +A cursor for use in pagination | +
| **score** | +[Int](#fixme) | +The relevancy score (0–100) assigned by the search engine, if +these results were found through a search. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **target** | +[Entity](#fixme)! | +The target entity. | +
| **direction** | +[String](#fixme)! | +The direction of the relationship. | +
| **targetType** | +[String](#fixme)! | +The type of entity on the receiving end of the relationship. | +
| **sourceCredit** | +[String](#fixme) | +How the source entity was actually credited, if different +from its main (performance) name. | +
| **targetCredit** | +[String](#fixme) | +How the target entity was actually credited, if different +from its main (performance) name. | +
| **begin** | +[Date](#fixme) | +The date on which the relationship became applicable. | +
| **end** | +[Date](#fixme) | +The date on which the relationship became no longer applicable. | +
| **ended** | +[Boolean](#fixme) | +Whether the relationship still applies. | +
| **attributes** | +[[String](#fixme)] | +Attributes which modify the relationship. There is a list +of all attributes, but the +attributes which are available, and how they should be used, depends on the +relationship type. | +
| **type** | +[String](#fixme) | +The type of relationship. | +
| **typeID** | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| Field / Argument | Type | Description | + +
|---|---|---|
| **pageInfo** | +[PageInfo](#fixme)! | +Information to aid in pagination. | +
| **edges** | +[[RelationshipEdge](#fixme)] | +A list of edges. | +
| **totalCount** | +[Int](#fixme) | +A count of the total number of items in this connection, +ignoring pagination. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **node** | +[Relationship](#fixme) | +The item at the end of the edge | +
| **cursor** | +[String](#fixme)! | +A cursor for use in pagination | +
| **score** | +[Int](#fixme) | +The relevancy score (0–100) assigned by the search engine, if +these results were found through a search. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **areas** | +[RelationshipConnection](#fixme) | +A list of relationships between these two entity types. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| before | +[String](#fixme) | ++ |
| last | +[Int](#fixme) | ++ |
| direction | +[String](#fixme) | +Filter by the relationship direction. | +
| type | +[String](#fixme) | +Filter by the relationship type. | +
| typeID | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| **artists** | +[RelationshipConnection](#fixme) | +A list of relationships between these two entity types. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| before | +[String](#fixme) | ++ |
| last | +[Int](#fixme) | ++ |
| direction | +[String](#fixme) | +Filter by the relationship direction. | +
| type | +[String](#fixme) | +Filter by the relationship type. | +
| typeID | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| **events** | +[RelationshipConnection](#fixme) | +A list of relationships between these two entity types. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| before | +[String](#fixme) | ++ |
| last | +[Int](#fixme) | ++ |
| direction | +[String](#fixme) | +Filter by the relationship direction. | +
| type | +[String](#fixme) | +Filter by the relationship type. | +
| typeID | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| **instruments** | +[RelationshipConnection](#fixme) | +A list of relationships between these two entity types. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| before | +[String](#fixme) | ++ |
| last | +[Int](#fixme) | ++ |
| direction | +[String](#fixme) | +Filter by the relationship direction. | +
| type | +[String](#fixme) | +Filter by the relationship type. | +
| typeID | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| **labels** | +[RelationshipConnection](#fixme) | +A list of relationships between these two entity types. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| before | +[String](#fixme) | ++ |
| last | +[Int](#fixme) | ++ |
| direction | +[String](#fixme) | +Filter by the relationship direction. | +
| type | +[String](#fixme) | +Filter by the relationship type. | +
| typeID | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| **places** | +[RelationshipConnection](#fixme) | +A list of relationships between these two entity types. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| before | +[String](#fixme) | ++ |
| last | +[Int](#fixme) | ++ |
| direction | +[String](#fixme) | +Filter by the relationship direction. | +
| type | +[String](#fixme) | +Filter by the relationship type. | +
| typeID | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| **recordings** | +[RelationshipConnection](#fixme) | +A list of relationships between these two entity types. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| before | +[String](#fixme) | ++ |
| last | +[Int](#fixme) | ++ |
| direction | +[String](#fixme) | +Filter by the relationship direction. | +
| type | +[String](#fixme) | +Filter by the relationship type. | +
| typeID | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| **releases** | +[RelationshipConnection](#fixme) | +A list of relationships between these two entity types. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| before | +[String](#fixme) | ++ |
| last | +[Int](#fixme) | ++ |
| direction | +[String](#fixme) | +Filter by the relationship direction. | +
| type | +[String](#fixme) | +Filter by the relationship type. | +
| typeID | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| **releaseGroups** | +[RelationshipConnection](#fixme) | +A list of relationships between these two entity types. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| before | +[String](#fixme) | ++ |
| last | +[Int](#fixme) | ++ |
| direction | +[String](#fixme) | +Filter by the relationship direction. | +
| type | +[String](#fixme) | +Filter by the relationship type. | +
| typeID | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| **series** | +[RelationshipConnection](#fixme) | +A list of relationships between these two entity types. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| before | +[String](#fixme) | ++ |
| last | +[Int](#fixme) | ++ |
| direction | +[String](#fixme) | +Filter by the relationship direction. | +
| type | +[String](#fixme) | +Filter by the relationship type. | +
| typeID | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| **urls** | +[RelationshipConnection](#fixme) | +A list of relationships between these two entity types. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| before | +[String](#fixme) | ++ |
| last | +[Int](#fixme) | ++ |
| direction | +[String](#fixme) | +Filter by the relationship direction. | +
| type | +[String](#fixme) | +Filter by the relationship type. | +
| typeID | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| **works** | +[RelationshipConnection](#fixme) | +A list of relationships between these two entity types. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| before | +[String](#fixme) | ++ |
| last | +[Int](#fixme) | ++ |
| direction | +[String](#fixme) | +Filter by the relationship direction. | +
| type | +[String](#fixme) | +Filter by the relationship type. | +
| typeID | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| Field / Argument | Type | Description | + +
|---|---|---|
| **id** | +[ID](#fixme)! | +The ID of an object | +
| **mbid** | +[MBID](#fixme)! | +The MBID of the entity. | +
| **title** | +[String](#fixme) | +The official title of the entity. | +
| **disambiguation** | +[String](#fixme) | +A comment used to help distinguish identically named entitites. | +
| **aliases** | +[[Alias](#fixme)] | +Aliases are used to store +alternate names or misspellings. | +
| **artistCredit** | +[[ArtistCredit](#fixme)] | +The main credited artist(s). | +
| **releaseEvents** | +[[ReleaseEvent](#fixme)] | +The release events for this release. | +
| **date** | +[Date](#fixme) | +The release date +is the date in which a release was made available through some sort of +distribution mechanism. | +
| **country** | +[String](#fixme) | +The country in which the release was issued. | +
| **barcode** | +[String](#fixme) | +The barcode, if the +release has one. The most common types found on releases are 12-digit +UPCs and 13-digit +EANs. | +
| **status** | +[ReleaseStatus](#fixme) | +The status describes how “official” a release is. | +
| **statusID** | +[MBID](#fixme) | +The MBID associated with the value of the status
+field. |
+
| **packaging** | +[String](#fixme) | +The physical packaging that accompanies the release. See +the list of packaging for more +information. | +
| **packagingID** | +[MBID](#fixme) | +The MBID associated with the value of the packaging
+field. |
+
| **quality** | +[String](#fixme) | +Data quality indicates how good the data for a release is. +It is not a mark of how good or bad the music itself is – for that, use +ratings. | +
| **artists** | +[ArtistConnection](#fixme) | +A list of artists linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **labels** | +[LabelConnection](#fixme) | +A list of labels linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **recordings** | +[RecordingConnection](#fixme) | +A list of recordings linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **releaseGroups** | +[ReleaseGroupConnection](#fixme) | +A list of release groups linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| type | +[[ReleaseGroupType](#fixme)] | +Filter by one or more release group types. | +
| **relationships** | +[Relationships](#fixme) | +Relationships between this entity and other entitites. | +
| **tags** | +[TagConnection](#fixme) | +A list of tags linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| Field / Argument | Type | Description | + +
|---|---|---|
| **pageInfo** | +[PageInfo](#fixme)! | +Information to aid in pagination. | +
| **edges** | +[[ReleaseEdge](#fixme)] | +A list of edges. | +
| **totalCount** | +[Int](#fixme) | +A count of the total number of items in this connection, +ignoring pagination. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **node** | +[Release](#fixme) | +The item at the end of the edge | +
| **cursor** | +[String](#fixme)! | +A cursor for use in pagination | +
| **score** | +[Int](#fixme) | +The relevancy score (0–100) assigned by the search engine, if +these results were found through a search. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **area** | +[Area](#fixme) | ++ |
| **date** | +[Date](#fixme) | ++ |
| Field / Argument | Type | Description | + +
|---|---|---|
| **id** | +[ID](#fixme)! | +The ID of an object | +
| **mbid** | +[MBID](#fixme)! | +The MBID of the entity. | +
| **title** | +[String](#fixme) | +The official title of the entity. | +
| **disambiguation** | +[String](#fixme) | +A comment used to help distinguish identically named entitites. | +
| **aliases** | +[[Alias](#fixme)] | +Aliases are used to store +alternate names or misspellings. | +
| **artistCredit** | +[[ArtistCredit](#fixme)] | +The main credited artist(s). | +
| **firstReleaseDate** | +[Date](#fixme) | +The date of the earliest release in the group. | +
| **primaryType** | +[ReleaseGroupType](#fixme) | +The type +of a release group describes what kind of releases the release group represents, +e.g. album, single, soundtrack, compilation, etc. A release group can have a +“main” type and an unspecified number of additional types. | +
| **primaryTypeID** | +[MBID](#fixme) | +The MBID associated with the value of the primaryType
+field. |
+
| **secondaryTypes** | +[[ReleaseGroupType](#fixme)] | +Additional types +that apply to this release group. | +
| **secondaryTypeIDs** | +[[MBID](#fixme)] | +The MBIDs associated with the values of the secondaryTypes
+field. |
+
| **artists** | +[ArtistConnection](#fixme) | +A list of artists linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **releases** | +[ReleaseConnection](#fixme) | +A list of releases linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| type | +[[ReleaseGroupType](#fixme)] | +Filter by one or more release group types. | +
| status | +[[ReleaseStatus](#fixme)] | +Filter by one or more release statuses. | +
| **relationships** | +[Relationships](#fixme) | +Relationships between this entity and other entitites. | +
| **tags** | +[TagConnection](#fixme) | +A list of tags linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| Field / Argument | Type | Description | + +
|---|---|---|
| **pageInfo** | +[PageInfo](#fixme)! | +Information to aid in pagination. | +
| **edges** | +[[ReleaseGroupEdge](#fixme)] | +A list of edges. | +
| **totalCount** | +[Int](#fixme) | +A count of the total number of items in this connection, +ignoring pagination. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **node** | +[ReleaseGroup](#fixme) | +The item at the end of the edge | +
| **cursor** | +[String](#fixme)! | +A cursor for use in pagination | +
| **score** | +[Int](#fixme) | +The relevancy score (0–100) assigned by the search engine, if +these results were found through a search. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **areas** | +[AreaConnection](#fixme) | +Search for area entities matching the given query. | +
| query | +[String](#fixme)! | +The query terms, in Lucene search syntax. See examples +and search fields. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **artists** | +[ArtistConnection](#fixme) | +Search for artist entities matching the given query. | +
| query | +[String](#fixme)! | +The query terms, in Lucene search syntax. See examples +and search fields. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **events** | +[EventConnection](#fixme) | +Search for event entities matching the given query. | +
| query | +[String](#fixme)! | +The query terms, in Lucene search syntax. See examples +and search fields. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **instruments** | +[InstrumentConnection](#fixme) | +Search for instrument entities matching the given query. | +
| query | +[String](#fixme)! | +The query terms, in Lucene search syntax. See examples +and search fields. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **labels** | +[LabelConnection](#fixme) | +Search for label entities matching the given query. | +
| query | +[String](#fixme)! | +The query terms, in Lucene search syntax. See examples +and search fields. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **places** | +[PlaceConnection](#fixme) | +Search for place entities matching the given query. | +
| query | +[String](#fixme)! | +The query terms, in Lucene search syntax. See examples +and search fields. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **recordings** | +[RecordingConnection](#fixme) | +Search for recording entities matching the given query. | +
| query | +[String](#fixme)! | +The query terms, in Lucene search syntax. See examples +and search fields. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **releases** | +[ReleaseConnection](#fixme) | +Search for release entities matching the given query. | +
| query | +[String](#fixme)! | +The query terms, in Lucene search syntax. See examples +and search fields. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **releaseGroups** | +[ReleaseGroupConnection](#fixme) | +Search for release group entities matching the given query. | +
| query | +[String](#fixme)! | +The query terms, in Lucene search syntax. See examples +and search fields. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **series** | +[SeriesConnection](#fixme) | +Search for series entities matching the given query. | +
| query | +[String](#fixme)! | +The query terms, in Lucene search syntax. See examples +and search fields. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **works** | +[WorkConnection](#fixme) | +Search for work entities matching the given query. | +
| query | +[String](#fixme)! | +The query terms, in Lucene search syntax. See examples +and search fields. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| Field / Argument | Type | Description | + +
|---|---|---|
| **id** | +[ID](#fixme)! | +The ID of an object | +
| **mbid** | +[MBID](#fixme)! | +The MBID of the entity. | +
| **name** | +[String](#fixme) | +The official name of the entity. | +
| **disambiguation** | +[String](#fixme) | +A comment used to help distinguish identically named entitites. | +
| **type** | +[String](#fixme) | +The type primarily describes what type of entity the series +contains. | +
| **typeID** | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| **relationships** | +[Relationships](#fixme) | +Relationships between this entity and other entitites. | +
| **tags** | +[TagConnection](#fixme) | +A list of tags linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| Field / Argument | Type | Description | + +
|---|---|---|
| **pageInfo** | +[PageInfo](#fixme)! | +Information to aid in pagination. | +
| **edges** | +[[SeriesEdge](#fixme)] | +A list of edges. | +
| **totalCount** | +[Int](#fixme) | +A count of the total number of items in this connection, +ignoring pagination. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **node** | +[Series](#fixme) | +The item at the end of the edge | +
| **cursor** | +[String](#fixme)! | +A cursor for use in pagination | +
| **score** | +[Int](#fixme) | +The relevancy score (0–100) assigned by the search engine, if +these results were found through a search. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **name** | +[String](#fixme)! | +The tag label. | +
| **count** | +[Int](#fixme) | +How many times this tag has been applied to the entity. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **pageInfo** | +[PageInfo](#fixme)! | +Information to aid in pagination. | +
| **edges** | +[[TagEdge](#fixme)] | +A list of edges. | +
| **totalCount** | +[Int](#fixme) | +A count of the total number of items in this connection, +ignoring pagination. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **node** | +[Tag](#fixme) | +The item at the end of the edge | +
| **cursor** | +[String](#fixme)! | +A cursor for use in pagination | +
| **score** | +[Int](#fixme) | +The relevancy score (0–100) assigned by the search engine, if +these results were found through a search. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **id** | +[ID](#fixme)! | +The ID of an object | +
| **mbid** | +[MBID](#fixme)! | +The MBID of the entity. | +
| **resource** | +[URLString](#fixme)! | +The actual URL string. | +
| **relationships** | +[Relationships](#fixme) | +Relationships between this entity and other entitites. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **pageInfo** | +[PageInfo](#fixme)! | +Information to aid in pagination. | +
| **edges** | +[[URLEdge](#fixme)] | +A list of edges. | +
| **totalCount** | +[Int](#fixme) | +A count of the total number of items in this connection, +ignoring pagination. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **node** | +[URL](#fixme) | +The item at the end of the edge | +
| **cursor** | +[String](#fixme)! | +A cursor for use in pagination | +
| **score** | +[Int](#fixme) | +The relevancy score (0–100) assigned by the search engine, if +these results were found through a search. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **id** | +[ID](#fixme)! | +The ID of an object | +
| **mbid** | +[MBID](#fixme)! | +The MBID of the entity. | +
| **title** | +[String](#fixme) | +The official title of the entity. | +
| **disambiguation** | +[String](#fixme) | +A comment used to help distinguish identically named entitites. | +
| **aliases** | +[[Alias](#fixme)] | +Aliases are used to store +alternate names or misspellings. | +
| **iswcs** | +[[String](#fixme)] | +A list of ISWCs assigned +to the work by copyright collecting agencies. | +
| **language** | +[String](#fixme) | +The language in which the work was originally written. | +
| **type** | +[String](#fixme) | +The type of work. | +
| **typeID** | +[MBID](#fixme) | +The MBID associated with the value of the type
+field. |
+
| **artists** | +[ArtistConnection](#fixme) | +A list of artists linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| **relationships** | +[Relationships](#fixme) | +Relationships between this entity and other entitites. | +
| **tags** | +[TagConnection](#fixme) | +A list of tags linked to this entity. | +
| after | +[String](#fixme) | ++ |
| first | +[Int](#fixme) | ++ |
| Field / Argument | Type | Description | + +
|---|---|---|
| **pageInfo** | +[PageInfo](#fixme)! | +Information to aid in pagination. | +
| **edges** | +[[WorkEdge](#fixme)] | +A list of edges. | +
| **totalCount** | +[Int](#fixme) | +A count of the total number of items in this connection, +ignoring pagination. | +
| Field / Argument | Type | Description | + +
|---|---|---|
| **node** | +[Work](#fixme) | +The item at the end of the edge | +
| **cursor** | +[String](#fixme)! | +A cursor for use in pagination | +
| **score** | +[Int](#fixme) | +The relevancy score (0–100) assigned by the search engine, if +these results were found through a search. | +
| Value | Description | + +
|---|---|
| **ALBUM** | +An album, perhaps better defined as a “Long Play” (LP) +release, generally consists of previously unreleased material (unless this type +is combined with secondary types which change that, such as “Compilation”). This +includes album re-issues, with or without bonus tracks. | +
| **SINGLE** | +A single typically has one main song and possibly a handful +of additional tracks or remixes of the main track. A single is usually named +after its main song. | +
| **EP** | +An EP is a so-called “Extended Play” release and often +contains the letters EP in the title. Generally an EP will be shorter than a +full length release (an LP or “Long Play”) and the tracks are usually exclusive +to the EP, in other words the tracks don’t come from a previously issued +release. EP is fairly difficult to define; usually it should only be assumed +that a release is an EP if the artist defines it as such. | +
| **OTHER** | +Any release that does not fit any of the other categories. | +
| **BROADCAST** | +An episodic release that was originally broadcast via radio, +television, or the Internet, including podcasts. | +
| **COMPILATION** | +A compilation is a collection of previously released tracks +by one or more artists. | +
| **SOUNDTRACK** | +A soundtrack is the musical score to a movie, TV series, +stage show, computer game, etc. | +
| **SPOKENWORD** | +A non-music spoken word release. | +
| **INTERVIEW** | +An interview release contains an interview, generally with +an artist. | +
| **AUDIOBOOK** | +An audiobook is a book read by a narrator without music. | +
| **LIVE** | +A release that was recorded live. | +
| **REMIX** | +A release that was (re)mixed from previously released +material. | +
| **DJMIX** | +A DJ-mix is a sequence of several recordings played one +after the other, each one modified so that they blend together into a continuous +flow of music. A DJ mix release requires that the recordings be modified in some +manner, and the DJ who does this modification is usually (although not always) +credited in a fairly prominent way. | +
| **MIXTAPE** | +Promotional in nature (but not necessarily free), mixtapes +and street albums are often released by artists to promote new artists, or +upcoming studio albums by prominent artists. They are also sometimes used to +keep fans’ attention between studio releases and are most common in rap & hip +hop genres. They are often not sanctioned by the artist’s label, may lack proper +sample or song clearances and vary widely in production and recording quality. +While mixtapes are generally DJ-mixed, they are distinct from commercial DJ +mixes (which are usually deemed compilations) and are defined by having a +significant proportion of new material, including original production or +original vocals over top of other artists’ instrumentals. They are distinct from +demos in that they are designed for release directly to the public and fans, not +to labels. | +
| **DEMO** | +A release that was recorded for limited circulation or +reference use rather than for general public release. | +
| **NAT** | +A non-album track (special case). | +
| Value | Description | + +
|---|---|
| **OFFICIAL** | +Any release officially sanctioned by the artist and/or their +record company. (Most releases will fit into this category.) | +
| **PROMOTION** | +A giveaway release or a release intended to promote an +upcoming official release, e.g. prerelease albums or releases included with a +magazine. | +
| **BOOTLEG** | +An unofficial/underground release that was not sanctioned by +the artist and/or the record company. | +
| **PSEUDORELEASE** | +A pseudo-release is a duplicate release for +translation/transliteration purposes. | +
/g, '
')
+ .replace(/<\/?p>/g, '')
+ .trim()
+}
+
+function sortBy (arr, property) {
+ arr.sort((a, b) => {
+ const aValue = a[property]
+ const bValue = b[property]
+ if (aValue > bValue) return 1
+ if (bValue > aValue) return -1
+ return 0
+ })
+}
+
+function renderType (type) {
+ if (type.kind === 'NON_NULL') {
+ return renderType(type.ofType) + '!'
+ }
+ if (type.kind === 'LIST') {
+ return `[${renderType(type.ofType)}]`
+ }
+ return `[${type.name}](#fixme)`
+}
+
+function renderObject (type, { skipTitle = false } = {}) {
+ if (!skipTitle) {
+ console.log(`\n### ${type.name}\n`)
+ }
+ if (type.description) {
+ console.log(`${type.description}\n`)
+ }
+ console.log('
| Field / Argument | Type | Description | ') + console.log('') + type.fields.forEach(field => { + console.log('
|---|---|---|
| **${field.name}** | `) + console.log(`${renderType(field.type)} | `) + console.log(`${markdown(field.description)} | `) + console.log('
| ${arg.name} | `) + console.log(`${renderType(arg.type)} | `) + console.log(`${markdown(arg.description)} | `) + console.log('
| Value | Description | ') + console.log('') + type.enumValues.forEach(value => { + console.log('
|---|---|
| **${value.name}** | `) + console.log(`${markdown(value.description)} | `) + console.log('