Get Seat Info
Get the seat counts and the seat claims of a group subscription that uses developer-hosted invitations.
URL
GET https://api.storekit.apple.com/groups/v1/transactions/{originalTransactionId}/seatsSandbox URL
GET https://api.storekit-sandbox.apple.com/groups/v1/transactions/{originalTransactionId}/seatsPath Parameters
| Name | Type | Description |
|---|---|---|
originalTransactionId Required | originalTransactionId | The original transaction identifier of the group purchaser’s subscription. |
Response Codes
| Status | Reason | Type | Description |
|---|---|---|---|
| 200 | OK Content-Type: application/json | GetSeatInfoResponse | Request succeeded. |
| 400 | Bad Request Content-Type: application/json | (InvalidTransactionIdError | AppTransactionIdNotSupportedError | FamilyTransactionNotSupportedError | BundleTransactionIdNotSupportedError | TransactionNotDevManagedGroupError) | Invalid request. See the error code for more information. |
| 401 | Unauthorized | The JSON Web Token (JWT) in the authorization header is invalid. For more information, see Generating JSON Web Tokens for API requests. | |
| 403 | Forbidden Content-Type: application/json | SubscriptionNotActiveError | The subscription isn’t active. |
| 404 | Not Found Content-Type: application/json | OriginalTransactionIdNotFoundError | The original transaction identifier wasn’t found. |
| 429 | Content-Type: application/json | RateLimitExceededError | The request exceeded the rate limit. |
| 500 | Internal Server Error Content-Type: application/json | (GeneralInternalError | GeneralInternalRetryableError) | Server error. Try again later. |
Mentioned in
Discussion
Call this endpoint only for an active group subscription that uses developer-hosted invitations, where the invitationManagement value in the purchaser’s transaction is DEVELOPER. Your app hosts the invitations to these subscriptions, and you claim a seat for each member by calling the Claim Seat endpoint.
The response, GetSeatInfoResponse, contains:
The total number of seats in the subscription, totalSeatCount.
The number of seats that are available to claim, availableSeatCount.
The identifiers of the active seat claims, in the
assignedSeatClaimIdsarray.
The first seat always belongs to the group purchaser, so it’s never available to claim.
Use this endpoint to show the number of available seats in your invitation experience, and to recover the seatClaimId of a claimed seat if your records don’t contain it.
If the group purchaser reduces the number of seats, the App Store doesn’t unclaim any seats when the subscription renews. As a result, the number of claimed seats can be greater than totalSeatCount. To release seats, call the Unclaim Seat endpoint, which describes how to handle a smaller group at renewal.