---
title: "List Roster Members"
method: POST
path: "/agency/{agencyIds}/roster/members"
tags: ["Organization"]
---

# List Roster Members

`POST /agency/{agencyIds}/roster/members`

## Request

- Base URL: `https://api.gigwell.com/api`
- URL: `https://api.gigwell.com/api/agency/{agencyIds}/roster/members`
- Auth: HTTP bearer

Returns the roster of the agency identified by the `agencyIds` path parameter, with per-artist profile attributes (genres, locations, capacity, links, bios). Each artist is keyed by `entityId` — the same identifier [List Organization Members](./list-members) and [Run Report](./run-custom-filtered-export) use to scope a query to that artist.

The response has five sections, each controlled by a boolean in the request body (all default true): `roster` (agency config and per-entry agent/assistant/logistician/marketing assignments), `artists` (flat per-artist entries), `profile` (profile attributes), `artistMembers`, and `agents`. Narrow the profile payload with the `profileFields` allowlist; an empty or omitted list returns the full profile set. Profiles are returned, not filtered — request the fields you need, filter client-side, then pass the matching `entityId` values to [Run Report](./run-custom-filtered-export).

Every artist carries two status flags: `activeOnRoster` (false = deactivated on the roster, retained only for historical reporting) and `restricted` (mailbox access is limited, which can narrow calendar and availability visibility). Null fields are omitted from the response.

## Path parameters

- `agencyIds` string, required

## Request body

- RosterMembersRequest
  - `roster` boolean: Include roster config block (entries[] with per-entry agents/assistants/logisticians/marketing assignments, tags, booknow)
  - `artists` boolean: Include artists[] flat entries (identity/contact fields plus activeOnRoster/restricted)
  - `profile` boolean: Include profiles[] (reduced field set; embedSettings excluded). An artist whose Profile failed to load is omitted from profiles[] but remains in artists[].
  - `artistMembers` boolean: Include artistMemberAccounts + invitedArtistMemberAccountRoles
  - `agents` boolean: Include agents[] (agency agent contacts) AND per-entry agents/assistants/logisticians/marketing assignments inside roster.entries[]. When false, top-level agents is omitted and per-entry assignments become empty lists.
  - `profileFields` string[], nullable: Allowlist of profile fields to include; empty or omitted returns the full profile set. Unknown names return 400.

## Response `200`

OK

- ListRosterMembersResponse
  - `status` 'OK' | 'FAIL' | 'ERROR'
  - `code` string, nullable: ResultCode enum name (e.g. SUCCESS, NOT_FOUND, RATE_LIMIT_EXCEEDED)
  - `message` string, nullable: Result message: OK on success; the error text when status is FAIL or ERROR.
  - `messages` string[], nullable: In rare, specific cases, additional error messages.
  - `data` object
    - `identityId` string
    - `title` string
    - `webtitle` string
    - `avatarImageUrl` string
    - `profileImageUrl` string
    - `bannerImageUrl` string
    - `roster` object
      - `id` string
      - `entries` object[]
        - `sortOrder` integer
        - `entityId` string
        - `agents` RosterAssignment[]
          - `accountId` string
          - `autoAdd` boolean
        - `assistants` RosterAssignment[]
          - `accountId` string
          - `autoAdd` boolean
        - `logisticians` RosterAssignment[]
          - `accountId` string
          - `autoAdd` boolean
        - `marketing` RosterAssignment[]
          - `accountId` string
          - `autoAdd` boolean
        - `tags` string[]
        - `activeOnRoster` boolean
        - `marketplace` boolean
        - `booknow` boolean
        - `restricted` boolean
        - `riderId` string
        - `createdDate` string
        - `updatedDate` string
      - `entryCount` integer
      - `autoAlphaSort` boolean
      - `agentsCanUseShowBooking` boolean
      - `agentsCanEditRestrictedBooking` boolean
      - `agentsHaveFullAccess` boolean
      - `newArtistsBooknow` boolean
      - `restrictedMailboxAccess` boolean
      - `showInactiveArtists` boolean
      - `entityIdsSharingArtists` string[]
      - `createdDate` string
      - `updatedDate` string
    - `artists` object[]
      - `entityId` string
      - `title` string
      - `webtitle` string
      - `email` string
      - `legalTitle` string
      - `phoneNumber` string
      - `avatarImageUrl` string
      - `profileImageUrl` string
      - `booknow` boolean
      - `tags` string[]
      - `activeOnRoster` boolean
      - `restricted` boolean
    - `profiles` object[]
      - `entityId` string
      - `title` string
      - `webtitle` string
      - `biography` string
      - `genres` string[]
      - `labels` string[]
      - `hashtag` string
      - `socialNetworks` object[]
        - `name` 'amazonMusic' | 'appleMusic' | 'bandcamp' | 'bandsintown' | 'beatport' | 'bilibili' | 'deezer' | 'discogs' | 'douyin' | 'facebook' | 'instagram' | 'kuaishou' | 'mixcloud' | 'pandora' | 'patreon' | 'residentAdvisor' | 'reverbNation' | 'shazam' | 'songkick' | 'soundcloud' | 'spotify' | 'tidal' | 'thedjlist' | 'tiktok' | 'toutiao' | 'traxsource' | 'twitch' | 'twitter' | 'website' | 'weibo' | 'wikipedia' | 'youtube'
        - `username` string
        - `userid` string
        - `url` string
        - `count` integer
        - `displayed` boolean
        - `order` integer
      - `profileImages` string[]
      - `avatarImageUrl` string
      - `profileImageUrl` string
      - `profileHeaderImageUrl` string
      - `bannerImageUrl` string
      - `discographyUrl` string
      - `presskitlink` string
      - `techriderlink` string
      - `presskitimage` string
      - `quotes` string[]
      - `affiliations` string
      - `nationality` string
      - `city` string
      - `country` string
      - `countryName` string
      - `hometown` string
      - `customFields` object[]
        - `values` string[]
        - `entityId` string
        - `presetType` 'accountFilter' | 'advanceSheetTemplate' | 'advancing' | 'agencyAnalyticsFilterentity' | 'agencyAnalyticsFilteraccount' | 'allArtistsCalendar' | 'airline' | 'artistExpenses' | 'artistExpenseType' | 'bedSize' | 'bookNowSettings' | 'bookingPresets' | 'bookingReportsFilter' | 'billedAs' | 'billingType' | 'blockedReason' | 'buyerExpenses' | 'buyerExpenseType' | 'bookingFields' | 'calendars' | 'calendarStreamFilterentity' | 'calendarStreamFilteraccount' | 'cannedMessages' | 'contractTermsType' | 'contractTermsPhrases' | 'customInvoiceIdSequences' | 'customLogisticsConfig' | 'customLogisticsPresets' | 'currencies' | 'csvReportPreset' | 'disposition' | 'distanceUnit' | 'documentPacket' | 'dynamicPdfReportPreset' | 'enabledFeatures' | 'entityAssetsTag' | 'entityLegalAssetsTag' | 'entityFilter' | 'entityNotificationSettings' | 'eSignSettings' | 'events' | 'eventSchedule' | 'eventScheduleActor' | 'eventScheduleLocation' | 'eventScheduleType' | 'eventType' | 'eventCalendarFilterentity' | 'eventDetailPresets' | 'eventReportsFilter' | 'expensesReportsFilter' | 'gigstreamSettings' | 'groundSpecialRequests' | 'hotelSpecialRequests' | 'htmlDocsSettings' | 'inboundEmailMessageFilter' | 'incomeTaxRateSettings' | 'internalStatus' | 'invoiceDistributionItemReportsFilter' | 'invoiceReportsFilter' | 'invoiceItemReportsFilter' | 'invoices' | 'invoiceItemLabels' | 'itinerary' | 'itineraryRequestSettings' | 'itinerarySettings' | 'jsonReportPreset' | 'logisticsPhrases' | 'logisticsType' | 'merchSeller' | 'minimumAge' | 'mailboxFilterentity' | 'mailboxFilteraccount' | 'offer' | 'outboundEmailMessageFilter' | 'paymentPlan' | 'paymentConfig' | 'profileCustom1' | 'profileCustom2' | 'profileCustom3' | 'profileCustom4' | 'profileCustom5' | 'profileFields' | 'profileGenre' | 'profileLabel' | 'profileEmbedSettings' | 'performanceType' | 'radiusClausePreset' | 'rating' | 'reportColumnsPreset' | 'resourceFilter' | 'roomType' | 'rosterTag' | 'rosterEmbedSettings' | 'settlementReportsFilter' | 'settlementMessageReportsFilter' | 'seating' | 'signUpFilter' | 'smoking' | 'summaryViewConfig' | 'summaryViewPermissions' | 'taskPresets' | 'taskFilter' | 'taskReportsFilter' | 'taxRates' | 'teamPresets' | 'ticketFees' | 'ticketFeeType' | 'ticketScale' | 'ticketType' | 'timeUnit' | 'travelSpecialRequests' | 'travelType' | 'vehicleType' | 'venueAssetsTag' | 'venueCalendars' | 'venueLegalAssetsTag' | 'venueRosterTag' | 'exportFilter'
      - `activeOnRoster` boolean
      - `restricted` boolean
      - `soundcloudmedia` ExternalMedia[]
        - `fullWidth` boolean
        - `name` string
        - `stream_url` string
        - `url` string
        - `validation` MediaValidation
          - `error` 'INVALID_URL' | 'UNAUTHORIZED' | 'NOT_FOUND' | 'UNSUPPORTED_TYPE'
          - `status` 'VALID' | 'WARNING' | 'INVALID'
          - `dateTime` string
          - `providerName` string
          - `type` 'photo' | 'video' | 'rich' | 'link' | 'error'
      - `mixcloudmedia` ExternalMedia[]
        - `fullWidth` boolean
        - `name` string
        - `stream_url` string
        - `url` string
        - `validation` MediaValidation
          - `error` 'INVALID_URL' | 'UNAUTHORIZED' | 'NOT_FOUND' | 'UNSUPPORTED_TYPE'
          - `status` 'VALID' | 'WARNING' | 'INVALID'
          - `dateTime` string
          - `providerName` string
          - `type` 'photo' | 'video' | 'rich' | 'link' | 'error'
      - `youtubemedia` ExternalMedia[]
        - `fullWidth` boolean
        - `name` string
        - `stream_url` string
        - `url` string
        - `validation` MediaValidation
          - `error` 'INVALID_URL' | 'UNAUTHORIZED' | 'NOT_FOUND' | 'UNSUPPORTED_TYPE'
          - `status` 'VALID' | 'WARNING' | 'INVALID'
          - `dateTime` string
          - `providerName` string
          - `type` 'photo' | 'video' | 'rich' | 'link' | 'error'
      - `reach` integer
      - `customReach` integer
      - `capacity` integer
      - `thedjlistrank` integer
      - `owner` string
      - `displayTitle` string
      - `multimedia` ExternalMedia[]
        - `fullWidth` boolean
        - `name` string
        - `stream_url` string
        - `url` string
        - `validation` MediaValidation
          - `error` 'INVALID_URL' | 'UNAUTHORIZED' | 'NOT_FOUND' | 'UNSUPPORTED_TYPE'
          - `status` 'VALID' | 'WARNING' | 'INVALID'
          - `dateTime` string
          - `providerName` string
          - `type` 'photo' | 'video' | 'rich' | 'link' | 'error'
      - `updatedDate` string
      - `createdDate` string
    - `artistMemberAccounts` object
    - `invitedArtistMemberAccountRoles` object
    - `agents` Account[]
      - `id` string: Unique identifier of the member's Gigwell account.
      - `firstName` string: Member's first name.
      - `lastName` string: Member's last name.
      - `email` string: Member's email address, used as the account login and primary contact.
      - `displayTitle` string: Read-only display name for the member, composed from first and last name.
      - `avatarImageUrl` string: URL of the member's small avatar image; absent when no avatar is set.
      - `profileImageUrl` string: URL of the member's full-size profile image; absent when none is set.
      - `primaryPhone` PhoneNumber
        - `primary` boolean: Whether this is the primary phone number.
        - `type` string: Number type. Default main.
        - `number` string: The phone number.
      - `active` boolean: Whether the member's Gigwell account is active.
  - `requestId` string, nullable: A request correlation id generated by the server.

## Changes

- **2026-10-30** `f761a02f0202`: 2 breaking, 3 warning, 24 info
  - the response property `data/artistMemberAccounts/additionalProperties/items/title` became nullable for the status `200`
  - the `data/agents/items/primaryPhone` response's property type changed from `object` to no type for status `200`
  - removed the optional property `data/agents/items/primaryPhone/number` from the response with the `200` status
  - removed the optional property `data/agents/items/primaryPhone/primary` from the response with the `200` status
  - …25 more
- **2026-10-28** `97b98f94f6b6`: 2 warning
  - added the new `bandcamp` enum value to the `data/profiles/items/socialNetworks/items/name` response property for the response status `200`
  - added the new `venueRosterTag` enum value to the `data/profiles/items/customFields/items/presetType` response property for the response status `200`
- **2026-10-15** `83d505622043`: 3 warning
  - added the new `venueAssetsTag` enum value to the `data/profiles/items/customFields/items/presetType` response property for the response status `200`
  - added the new `venueCalendars` enum value to the `data/profiles/items/customFields/items/presetType` response property for the response status `200`
  - added the new `venueLegalAssetsTag` enum value to the `data/profiles/items/customFields/items/presetType` response property for the response status `200`

[Operation history](https://skmtc.dev/gigwell/apis/gigwell-public-api/changes/agency/:agencyIds/roster/members/post.md)

---

[API](https://skmtc.dev/gigwell/apis/gigwell-public-api.md) - [All operations](https://skmtc.dev/gigwell/apis/gigwell-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/gigwell/apis/gigwell-public-api/revisions/0e75f0ca0803?raw)
