## All [/library/sections/{sectionId}/all{?type,filters}]
This resource represents the set of items matching the provided filter parameters.
### Get the filtered items [GET]
Description for GET method (action) placeholder.
+ Parameters
+ sectionId: 1 (number, required) - Section identifier
+ type: 1 (number, optional) - Item type
+ filters (string, optional) - This fake parameter stands in for the various filter parameters
+ Request title=Zoolander (text/xml)
+ Response 200 (text/xml;charset=utf-8)
+ body
```xml
```
### Set the fields of the filtered items [PUT /library/sections/{sectionId}/all{?type,filters,field%2Evalue,field%2Elocked,title%2Evalue,artist%2Etitle%2Evalue,artist%2Etitle%2Eid,album%2Etitle%2Evalue,album%2Etitle%2Eid}]
N.B. `field` in a parameter, represents any valid field for an item.
- **Parameters, extra documentation**
- artist.title.value
- When used with track, both artist.title.value and album.title.value need to be specified
- title.value usage
- Summary
- Tracks always rename and never merge
- Albums and Artists
- if single item and item without title does not exist, it is renamed.
- if single item and item with title does exist they are merged.
- if multiple they are always merged.
- Tracks
- Works as expected will update the track's title
- Single track: `/library/sections/{id}/all?type=10&id=42&title.value=NewName`
- Multiple tracks: `/library/sections/{id}/all?type=10&id=42,43,44&title.value=NewName`
- All tracks: `/library/sections/{id}/all?type=10&title.value=NewName`
- Albums
- Functionality changes depending on the existence of an album with the same title
- Album exists
- Single album: `/library/sections/{id}/all?type=9&id=42&title.value=Album 2`
- Album with id 42 is merged into album titled "Album 2"
- Multiple/All albums: `/library/sections/{id}/all?type=9&title.value=Moo Album`
- All albums are merged into the existing album titled "Moo Album"
- Album does not exist
- Single album: `/library/sections/{id}/all?type=9&id=42&title.value=NewAlbumTitle`
- Album with id 42 has title modified to "NewAlbumTitle"
- Multiple/All albums: `/library/sections/{id}/all?type=9&title.value=NewAlbumTitle`
- All albums are merged into a new album with title="NewAlbumTitle"
- Artists
- Functionaly changes depending on the existence of an artist with the same title.
- Artist exists
- Single artist: `/library/sections/{id}/all?type=8&id=42&title.value=Artist 2`
- Artist with id 42 is merged into existing artist titled "Artist 2"
- Multiple/All artists: `/library/sections/{id}/all?type=8&title.value=Artist 3`
- All artists are merged into the existing artist titled "Artist 3"
- Artist does not exist
- Single artist: `/library/sections/{id}/all?type=8&id=42&title.value=NewArtistTitle`
- Artist with id 42 has title modified to "NewArtistTitle"
- Multiple/All artists: `/library/sections/{id}/all?type=8&title.value=NewArtistTitle`
- All artists are merged into a new artist with title="NewArtistTitle"
- **Notes**
- Technically square brackets are not allowed in an URI except the Internet Protocol Literal Address
- RFC3513: A host identified by an Internet Protocol literal address, version 6 [RFC3513] or later, is distinguished by enclosing the IP literal within square brackets ("[" and "]"). This is the only place where square bracket characters are allowed in the URI syntax.
- Escaped square brackets are allowed, but don't render well
- **Todo**
- Check if `tagtype[].tag.tag-` syntax is currently correct
- **Parameters not representable in Api Blueprint**
- **tagtype[idx].tag.tag** (string, optional) - Creates tag and adds it as a tagging on each item in the set. - [idx] links the.tag.tag and .tagging.* parameters together)
- **tagtype[idx].tagging.object** (string, optional) - `object` may be text/thumb/art/theme - Optionally used in conjunction with tag.tag, to update tagging info across the set.
- **tagtype[].tag.tag-** (string, optional) - Remove comma separated tags from the set of items
- **tagtype[].tag** (string, optional) - Remove all taggings of this type (e.g. genre) from the set of items
+ Parameters
+ sectionId: 1 (number, required) - Section identifier
+ type: 1 (number, required) - Item type
+ filters (string, optional) - This fake parameter stands in for the various filter parameters.
+ field%2Evalue (string, optional) - Updates `field` across the filtered set of items.
+ field%2Elocked: 1 (number, optional) - Updates the locked state of `field` across the set. Valid values: 0 or 1.
+ title%2Evalue (string, optional) - This field is treated specially by albums or artists and may be used for implicit reparenting.
+ artist%2Etitle%2Evalue (string, optional) - Reparents set of Tracks or Albums - used with album.title.* in the case of tracks
+ artist%2Etitle%2Eid (string, optional) - Reparents set of Tracks or Albums - used with album.title.* in the case of tracks
+ album%2Etitle%2Evalue (string, optional) - Reparents set of Tracks - Must be used in conjunction with artist.title.value or id
+ album%2Etitle%2Eid (string, optional) - Reparents set of Tracks - Must be used in conjunction with artist.title.value or id
+ Request Example put (text/xml)
Description for request placeholder.
+ body
+ Response 200 (text/html)
Description for response placeholder.
+ body
+ Response 400 (text/html)
```html
Bad Request400 Bad Request
```