> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fmdb.net/llms.txt
> Use this file to discover all available pages before exploring further.

# Retrieves the collection of ArtistRole resources.

> Retrieves the collection of ArtistRole resources.



## OpenAPI

````yaml /openapi.json get /api/artists/roles
openapi: 3.1.0
info:
  title: FMDB API
  description: >-
    The FMDB API provides access to a comprehensive film music database,
    covering releases, productions, artists, and recordings. It is designed for
    integration with third-party applications and services. FMDB is a
    non-commercial, privacy-first platform. The API is currently in beta and
    subject to change. Authentication is required for all endpoints unless
    stated otherwise.
  version: 1.0.0 Beta
servers:
  - url: https://www.fmdb.net
    description: Production
security:
  - bearerAuth: []
tags:
  - name: ArtistGroupMember
    description: Group memberships for artists.
  - name: ArtistAlias
    description: Artist aliases including nicknames, pseudonyms, and alternate spellings.
  - name: Artist
    description: Musical artists including individuals, groups, orchestras, and choirs.
  - name: ArtistRoleResolution
    description: >-
      Resolves a free-text credit title to the best-matching artist role, scoped
      by credit context.
  - name: ArtistRole
    description: >-
      Artist roles define the function of an artist in a release, recording, or
      track.
  - name: ArtistExternalLink
    description: External links for artists (MusicBrainz, Spotify, etc.).
  - name: LabelExternalLink
    description: External links for labels (MusicBrainz, Spotify, etc.).
  - name: OrganizationExternalLink
    description: External links for organizations (VGMdb, etc.).
  - name: ProductionExternalLink
    description: External links for productions (VGMdb, MusicBrainz, etc.).
  - name: ReleaseExternalLink
    description: External links for releases (Spotify, Discogs, MusicBrainz, etc.).
  - name: Label
    description: Record labels and music publishers.
  - name: LabelSeries
    description: Label series for categorizing releases within a label.
  - name: Organization
    description: >-
      Non-performer organizations credited on recordings (orchestra contractors,
      music-preparation houses, scoring services).
  - name: PackagingType
    description: >-
      Physical packaging types for releases (Jewel Case, Digipak, Box Set,
      etc.).
  - name: ProductionEntry
    description: Individual entries (episodes, parts) within a production series.
  - name: ProductionRecording
    description: Recordings associated with a production.
  - name: Production
    description: Film, TV, and game productions with associated music.
  - name: ReleaseFormat
    description: Physical or digital formats of a release (CD, vinyl, digital).
  - name: ReleaseRecording
    description: >-
      Recordings linked to a release with effective credits after applying
      exclusions.
  - name: Release
    description: Music releases including albums, soundtracks, and compilations.
  - name: ReleaseTrack
    description: Individual tracks on a release format.
  - name: Me
    description: Resource 'Me' operations.
  - name: User
    description: Resource 'User' operations.
  - name: CollectionItem
    description: Collection items representing releases owned by a user.
  - name: WishlistItem
    description: Wishlist items representing releases a user wants to acquire.
paths:
  /api/artists/roles:
    get:
      tags:
        - ArtistRole
      summary: Retrieves the collection of ArtistRole resources.
      description: Retrieves the collection of ArtistRole resources.
      operationId: api_artistsroles_get_collection
      parameters:
        - name: page
          in: query
          description: The collection page number
          required: false
          deprecated: false
          schema:
            type: integer
            default: 1
          style: form
          explode: true
        - name: role
          in: query
          description: ''
          required: false
          deprecated: false
          schema:
            type: string
          style: form
          explode: false
        - name: scope
          in: query
          description: ''
          required: false
          deprecated: false
          schema:
            type: string
          style: form
          explode: false
        - name: scope[]
          in: query
          description: ''
          required: false
          deprecated: false
          schema:
            type: array
            items:
              type: string
          style: form
          explode: true
        - name: organization_applicable
          in: query
          description: ''
          required: false
          deprecated: false
          schema:
            type: boolean
          style: form
          explode: false
        - name: order[role]
          in: query
          description: ''
          required: false
          deprecated: false
          schema:
            type: string
            default: asc
            enum:
              - asc
              - desc
          style: form
          explode: false
        - name: exact
          in: query
          description: >-
            Exact (canonical) lookup. When true, the `role` filter returns only
            roles whose name equals the value verbatim, with no partial matching
            and no fuzzy ranking. On MySQL the comparison is case-insensitive.
            Default partial-matching behaviour applies when omitted or false.
          required: false
          deprecated: false
          schema:
            example: true
            type: boolean
          style: form
          explode: true
      responses:
        '200':
          description: ArtistRole collection
          content:
            application/vnd.api+json:
              schema:
                description: ArtistRole.jsonapi collection.
                allOf:
                  - $ref: '#/components/schemas/JsonApiCollectionBaseSchema'
                  - type: object
                    properties:
                      data:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: string
                            type:
                              type: string
                            attributes:
                              type: object
                              properties:
                                _id:
                                  example: 01934567-89ab-7cde-af01-23456789abcd
                                  type: string
                                role:
                                  description: >-
                                    Role name. Variants follow a "Base
                                    (Qualifier)" convention, e.g. "Composer
                                    (Additional Music)", "Producer (Album)",
                                    "Conductor (Choir)".
                                  example: Composer
                                  type: string
                                slug:
                                  readOnly: true
                                  description: >-
                                    Immutable, human-readable identifier derived
                                    from the role name at creation. Never
                                    changes on rename.
                                  example: composer
                                  type: string
                                scope:
                                  example: release
                                  type: string
                                  enum:
                                    - all
                                    - linked_recording
                                    - recording
                                    - release
                                    - track
                                description_markdown:
                                  example: Primary composer for the main theme
                                  type:
                                    - string
                                    - 'null'
                                organization_applicable:
                                  description: >-
                                    Whether this role may be credited to an
                                    organization (e.g. a contracting firm), as
                                    opposed to an individual performer.
                                    Editable; organization credits reject roles
                                    where this is false. Independent of scope,
                                    which is the credit-level axis.
                                  default: false
                                  example: false
                                  type: boolean
                                aliases:
                                  readOnly: true
                                  description: >-
                                    Alternative titles (synonyms) that resolve
                                    to this role, deterministically ordered.
                                    Empty when the role has no aliases.
                                  example:
                                    - Composed by
                                    - Music by
                                  type: array
                                  items:
                                    type: string
                          required:
                            - type
                            - id
components:
  schemas:
    JsonApiCollectionBaseSchema:
      allOf:
        - $ref: '#/components/schemas/JsonApiCollectionBaseSchemaNoPagination'
        - type: object
          properties:
            links:
              type: object
              properties:
                first:
                  type: string
                  format: iri-reference
                prev:
                  type: string
                  format: iri-reference
                next:
                  type: string
                  format: iri-reference
                last:
                  type: string
                  format: iri-reference
              example:
                first: string
                prev: string
                next: string
                last: string
            meta:
              type: object
              properties:
                itemsPerPage:
                  type: integer
                  minimum: 0
                currentPage:
                  type: integer
                  minimum: 0
    JsonApiCollectionBaseSchemaNoPagination:
      type: object
      properties:
        links:
          type: object
          properties:
            self:
              type: string
              format: iri-reference
          example:
            self: string
        meta:
          type: object
          properties:
            totalItems:
              type: integer
              minimum: 0
        data:
          type: array
      required:
        - data
  securitySchemes:
    bearerAuth:
      type: http
      description: API token authentication
      scheme: bearer
      bearerFormat: JWT

````