Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
106 changes: 106 additions & 0 deletions openapi/components/parameters.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,91 @@
schema:
type: string
default: main
buyerId:
name: buyerId
description: Must be a valid user ID.
required: true
in: query
schema:
$ref: ./schemas/UserID.yaml
calendarDiscoveryCategories:
name: categories
description: Filter for calendar event discovery.
required: false
in: query
schema:
type: string
description: Comma-separated list of calendar event categories
example: "avatars,exploration,gaming,roleplaying,music,performance"
calendarDiscoveryFeatured:
name: featuredResults
description: Filter for calendar event discovery.
required: false
in: query
schema:
$ref: ./schemas/CalendarEventDiscoveryInclusion.yaml
calendarDiscoveryMinimumInterestCount:
name: minimumInterestCount
description: Filter for calendar event discovery.
required: false
in: query
schema:
type: integer
example: 5
calendarDiscoveryMinimumRemainingMinutes:
name: minimumRemainingMinutes
description: Filter for calendar event discovery.
required: false
in: query
schema:
type: integer
example: 10
calendarDiscoveryNextCursor:
name: nextCursor
description: Cursor returned from previous calendar discovery queries (see nextCursor property of the schema CalendarEventDiscovery).
required: false
in: query
schema:
type: string
format: string
calendarDiscoveryNonFeatured:
name: nonFeaturedResults
description: Filter for calendar event discovery.
required: false
in: query
schema:
$ref: ./schemas/CalendarEventDiscoveryInclusion.yaml
calendarDiscoveryPersonalized:
name: personalizedResults
description: Filter for calendar event discovery.
required: false
in: query
schema:
$ref: ./schemas/CalendarEventDiscoveryInclusion.yaml
calendarDiscoveryScope:
name: scope
description: Scope for calendar event discovery.
required: false
in: query
schema:
$ref: ./schemas/CalendarEventDiscoveryScope.yaml
calendarDiscoveryTags:
name: tags
description: Filter for calendar event discovery.
required: false
in: query
schema:
type: string
description: Comma-separated list of calendar event tags
example: vrc_event_group_fair
calendarDiscoveryUpcomingOffsetMinutes:
name: upcomingOffsetMinutes
description: Filter for calendar event discovery.
required: false
in: query
schema:
type: integer
example: 10080
calendarId:
name: calendarId
description: Must be a valid calendar ID.
Expand Down Expand Up @@ -186,12 +271,12 @@
- file
- signature
example: file
fuzzy:
name: fuzzy
required: false
in: query
schema:
type: boolean

Check warning on line 279 in openapi/components/parameters.yaml

View workflow job for this annotation

GitHub Actions / lint

oas3-parameter-description

Parameter objects must have "description".
groupGalleryId:
name: groupGalleryId
description: Must be a valid group gallery ID.
Expand Down Expand Up @@ -331,6 +416,13 @@
in: query
schema:
$ref: ./schemas/InventoryItemType.yaml
inventoryItemSlotAsId:
name: inventoryItemId
description: Selector for inventory slot management.
required: true
in: path
schema:
$ref: ./schemas/InventoryEquipSlot.yaml
inventoryItemTags:
name: tags
description: Filter tags for inventory retrieval (comma-separated).
Expand All @@ -347,7 +439,7 @@
$ref: ./schemas/InventoryItemType.yaml
inventoryPedestalDuration:
name: duration
description: The duration before the sharing pedestal despawns.

Check notice on line 442 in openapi/components/parameters.yaml

View workflow job for this annotation

GitHub Actions / lint

vrc-typos

Unknown word: despawns, did you mean despairs, deans, or dedans?
required: true
in: query
schema:
Expand Down Expand Up @@ -433,12 +525,12 @@
schema:
type: string
format: date-time
mostRecentFlag:
name: mostRecent
required: false
in: query
schema:
type: boolean

Check warning on line 533 in openapi/components/parameters.yaml

View workflow job for this annotation

GitHub Actions / lint

oas3-parameter-description

Parameter objects must have "description".
noplatform:
name: noplatform
description: The platform the asset does not support.
Expand Down Expand Up @@ -492,6 +584,13 @@
in: query
schema:
$ref: ./schemas/OrderOption.yaml
orderShort:
name: order
description: Result ordering
required: false
in: query
schema:
$ref: ./schemas/OrderOptionShort.yaml
permissionId:
name: permissionId
description: Must be a valid permission ID.
Expand Down Expand Up @@ -566,6 +665,13 @@
in: query
schema:
$ref: ./schemas/SortOption.yaml
sortProductPurchase:
name: sort
description: The sort order of the results.
required: false
in: query
schema:
$ref: ./schemas/SortOptionProductPurchase.yaml
startDate:
name: startDate
description: The start date of the search range.
Expand All @@ -582,18 +688,18 @@
schema:
type: string
example: game night
storeId:
name: storeId
required: true
in: query
schema:
$ref: ./schemas/StoreID.yaml

Check warning on line 696 in openapi/components/parameters.yaml

View workflow job for this annotation

GitHub Actions / lint

oas3-parameter-description

Parameter objects must have "description".
storeView:
name: fetch
required: false
in: query
schema:
$ref: ./schemas/StoreView.yaml

Check warning on line 702 in openapi/components/parameters.yaml

View workflow job for this annotation

GitHub Actions / lint

oas3-parameter-description

Parameter objects must have "description".
subscriptionId:
name: subscriptionId
required: true
Expand Down
20 changes: 20 additions & 0 deletions openapi/components/paths.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,8 @@
$ref: "./paths/avatars.yaml#/paths/~1avatars~1{avatarId}~1selectFallback"
/calendar:
$ref: "./paths/calendar.yaml#/paths/~1calendar"
/calendar/discover:
$ref: "./paths/calendar.yaml#/paths/~1calendar~1discover"
/calendar/featured:
$ref: "./paths/calendar.yaml#/paths/~1calendar~1featured"
/calendar/following:
Expand All @@ -116,6 +118,10 @@
$ref: "./paths/miscellaneous.yaml#/paths/~1css~1app.css"
/economy/licenses/active:
$ref: "./paths/economy.yaml#/paths/~1economy~1licenses~1active"
/economy/purchase/listing:
$ref: "./paths/economy.yaml#/paths/~1economy~1purchase~1listing"
/economy/purchases:
$ref: "./paths/economy.yaml#/paths/~1economy~1purchases"
/economy/store:
$ref: "./paths/economy.yaml#/paths/~1economy~1store"
/economy/store/shelves:
Expand Down Expand Up @@ -230,6 +236,10 @@
$ref: "./paths/inventory.yaml#/paths/~1inventory~1template~1{inventoryTemplateId}"
"/inventory/{inventoryItemId}":
$ref: "./paths/inventory.yaml#/paths/~1inventory~1{inventoryItemId}"
"/inventory/{inventoryItemId}/consume":
$ref: "./paths/inventory.yaml#/paths/~1inventory~1{inventoryItemId}~1consume"
"/inventory/{inventoryItemId}/equip":
$ref: "./paths/inventory.yaml#/paths/~1inventory~1{inventoryItemId}~1equip"
"/invite/myself/to/{worldId}:{instanceId}":
$ref: "./paths/invite.yaml#/paths/~1invite~1myself~1to~1{worldId}:{instanceId}"
"/invite/{notificationId}/response":
Expand Down Expand Up @@ -268,6 +278,8 @@
$ref: "./paths/prints.yaml#/paths/~1prints~1user~1{userId}"
"/prints/{printId}":
$ref: "./paths/prints.yaml#/paths/~1prints~1{printId}"
"/products/{productId}":
$ref: "./paths/economy.yaml#/paths/~1products~1{productId}"
"/props/{propId}":
$ref: "./paths/props.yaml#/paths/~1props~1{propId}"
"/requestInvite/{userId}":
Expand Down Expand Up @@ -316,6 +328,8 @@
$ref: "./paths/avatars.yaml#/paths/~1users~1{userId}~1avatar"
"/users/{userId}/badges/{badgeId}":
$ref: "./paths/users.yaml#/paths/~1users~1{userId}~1badges~1{badgeId}"
"/users/{userId}/boop":
$ref: "./paths/friends.yaml#/paths/~1users~1{userId}~1boop"
"/users/{userId}/credits/eligible":
$ref: "./paths/economy.yaml#/paths/~1users~1{userId}~1credits~1eligible"
"/users/{userId}/delete":
Expand All @@ -332,6 +346,12 @@
$ref: "./paths/users.yaml#/paths/~1users~1{userId}~1instances~1groups"
"/users/{userId}/instances/groups/{groupId}":
$ref: "./paths/users.yaml#/paths/~1users~1{userId}~1instances~1groups~1{groupId}"
"/users/{userId}/mutuals":
$ref: "./paths/users.yaml#/paths/~1users~1{userId}~1mutuals"
"/users/{userId}/mutuals/friends":
$ref: "./paths/users.yaml#/paths/~1users~1{userId}~1mutuals~1friends"
"/users/{userId}/mutuals/groups":
$ref: "./paths/users.yaml#/paths/~1users~1{userId}~1mutuals~1groups"
"/users/{userId}/removeTags":
$ref: "./paths/users.yaml#/paths/~1users~1{userId}~1removeTags"
"/users/{userId}/subscription/eligible":
Expand Down
30 changes: 30 additions & 0 deletions openapi/components/paths/calendar.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,36 @@
$ref: ../responses/calendar/CalendarEventListResponse.yaml
"401":
$ref: ../responses/MissingCredentialsError.yaml
/calendar/discover:
get:
operationId: discoverCalendarEvents
summary: Discover calendar events
description: |-
Get a list of calendar events
Initially, call without a `nextCursor` parameter
For every successive call, use the `nextCursor` property returned in the previous call & the `number` of entries desired for this call
The `nextCursor` internally keeps track of the `offset` of the results, the initial request parameters, and accounts for discrepancies that might arise from time elapsed between calls
tags:
- calendar
parameters:
- $ref: ../parameters.yaml#/calendarDiscoveryScope
- $ref: ../parameters.yaml#/calendarDiscoveryCategories
- $ref: ../parameters.yaml#/calendarDiscoveryTags
- $ref: ../parameters.yaml#/calendarDiscoveryFeatured
- $ref: ../parameters.yaml#/calendarDiscoveryNonFeatured
- $ref: ../parameters.yaml#/calendarDiscoveryPersonalized
- $ref: ../parameters.yaml#/calendarDiscoveryMinimumInterestCount
- $ref: ../parameters.yaml#/calendarDiscoveryMinimumRemainingMinutes
- $ref: ../parameters.yaml#/calendarDiscoveryUpcomingOffsetMinutes
- $ref: ../parameters.yaml#/number
- $ref: ../parameters.yaml#/calendarDiscoveryNextCursor
security:
- authCookie: []
responses:
"200":
$ref: ../responses/calendar/CalendarEventDiscoveryResponse.yaml
"401":
$ref: ../responses/MissingCredentialsError.yaml
/calendar/featured:
get:
operationId: getFeaturedCalendarEvents
Expand Down Expand Up @@ -92,8 +122,8 @@
security:
- authCookie: []
responses:
"200":
$ref: ../responses/calendar/CalendarEventListResponse.yaml

Check warning on line 126 in openapi/components/paths/calendar.yaml

View workflow job for this annotation

GitHub Actions / lint

vrc-title

Schema must have a non-empty title.

Check warning on line 126 in openapi/components/paths/calendar.yaml

View workflow job for this annotation

GitHub Actions / lint

vrc-description

Cannot be empty.
"401":
$ref: ../responses/MissingCredentialsError.yaml
"/calendar/{groupId}/event":
Expand All @@ -114,8 +144,8 @@
security:
- authCookie: []
responses:
"200":
$ref: ../responses/calendar/CalendarEventResponse.yaml

Check warning on line 148 in openapi/components/paths/calendar.yaml

View workflow job for this annotation

GitHub Actions / lint

vrc-title

Schema must have a non-empty title.

Check warning on line 148 in openapi/components/paths/calendar.yaml

View workflow job for this annotation

GitHub Actions / lint

vrc-description

Cannot be empty.
"401":
$ref: ../responses/MissingCredentialsError.yaml
"/calendar/{groupId}/{calendarId}":
Expand Down Expand Up @@ -147,13 +177,13 @@
security:
- authCookie: []
responses:
"200":
$ref: ../responses/calendar/CalendarEventResponse.yaml

Check warning on line 181 in openapi/components/paths/calendar.yaml

View workflow job for this annotation

GitHub Actions / lint

vrc-title

Schema must have a non-empty title.

Check warning on line 181 in openapi/components/paths/calendar.yaml

View workflow job for this annotation

GitHub Actions / lint

vrc-description

Cannot be empty.
"401":
$ref: ../responses/MissingCredentialsError.yaml
"/calendar/{groupId}/{calendarId}.ics":
get:
operationId: getGroupCalendarEventICS

Check notice on line 186 in openapi/components/paths/calendar.yaml

View workflow job for this annotation

GitHub Actions / lint

vrc-operation-id

Consider renaming to getGroupCalendarEventIcs.
summary: Download calendar event as ICS
description: Returns the specified calendar in iCalendar (ICS) format.
tags:
Expand Down
57 changes: 57 additions & 0 deletions openapi/components/paths/economy.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
paths:
/Admin/transactions:
get:
operationId: getAdminTransactions

Check notice on line 9 in openapi/components/paths/economy.yaml

View workflow job for this annotation

GitHub Actions / lint

vrc-operation-id

Operation returns an array, consider renaming to listAdminTransactions.
summary: Get Admin Transactions
description: Get all own Admin transactions.
tags:
Expand Down Expand Up @@ -39,7 +39,7 @@
x-internal: true
/Steam/transactions:
get:
operationId: getSteamTransactions

Check notice on line 42 in openapi/components/paths/economy.yaml

View workflow job for this annotation

GitHub Actions / lint

vrc-operation-id

Operation returns an array, consider renaming to listSteamTransactions.
summary: List Steam Transactions
description: Get all own Steam transactions.
tags:
Expand Down Expand Up @@ -70,7 +70,7 @@
$ref: ../responses/MissingCredentialsError.yaml
/auth/user/subscription:
get:
operationId: getCurrentSubscriptions

Check notice on line 73 in openapi/components/paths/economy.yaml

View workflow job for this annotation

GitHub Actions / lint

vrc-operation-id

Operation returns an array, consider renaming to listCurrentSubscriptions.
summary: Get Current Subscriptions
description: Get a list of all current user subscriptions.
tags:
Expand All @@ -84,7 +84,7 @@
$ref: ../responses/MissingCredentialsError.yaml
/economy/licenses/active:
get:
operationId: getActiveLicenses

Check notice on line 87 in openapi/components/paths/economy.yaml

View workflow job for this annotation

GitHub Actions / lint

vrc-operation-id

Operation returns an array, consider renaming to listActiveLicenses.
summary: Get Active Licenses
description: Gets active licenses
tags:
Expand All @@ -96,6 +96,46 @@
$ref: ../responses/economy/LicenseListResponse.yaml
"401":
$ref: ../responses/MissingCredentialsError.yaml
/economy/purchase/listing:
post:
operationId: purchaseProductListing
summary: Purchase Product Listing
description: Purchases a product listing
tags:
- economy
requestBody:
content:
application/json:
schema:
$ref: ../requests/PurchaseProductListingRequest.yaml
security:
- authCookie: []
responses:
"200":
$ref: ../responses/economy/ProductPurchaseResponse.yaml
"401":
$ref: ../responses/MissingCredentialsError.yaml
/economy/purchases:
parameters:
- $ref: ../parameters.yaml#/buyerId
- $ref: ../parameters.yaml#/number
- $ref: ../parameters.yaml#/offset
- $ref: ../parameters.yaml#/mostRecentFlag
- $ref: ../parameters.yaml#/sortProductPurchase
- $ref: ../parameters.yaml#/orderShort
get:
operationId: getProductPurchases

Check notice on line 127 in openapi/components/paths/economy.yaml

View workflow job for this annotation

GitHub Actions / lint

vrc-operation-id

Operation returns an array, consider renaming to listProductPurchases.
summary: Get Product Purchases
description: Gets product purchases
tags:
- economy
security:
- authCookie: []
responses:
"200":
$ref: ../responses/economy/ProductPurchaseListResponse.yaml
"401":
$ref: ../responses/MissingCredentialsError.yaml
/economy/store:
parameters:
- $ref: ../parameters.yaml#/storeId
Expand All @@ -120,7 +160,7 @@
- $ref: ../parameters.yaml#/hydrateListings
- $ref: ../parameters.yaml#/storeView
get:
operationId: getStoreShelves

Check notice on line 163 in openapi/components/paths/economy.yaml

View workflow job for this annotation

GitHub Actions / lint

vrc-operation-id

Operation returns an array, consider renaming to listStoreShelves.
summary: Get Store Shelves
description: Gets the shelves for a store
tags:
Expand Down Expand Up @@ -165,9 +205,26 @@
$ref: ../responses/economy/ProductListingResponse.yaml
"401":
$ref: ../responses/MissingCredentialsError.yaml
"/products/{productId}":
parameters:
- $ref: ../parameters.yaml#/productId
get:
operationId: getProductListingAlternate
deprecated: true
summary: Get Product Listing (alternate)
description: Gets a product listing
tags:
- economy
security:
- authCookie: []
responses:
"200":
$ref: ../responses/economy/ProductListingResponse.yaml
"401":
$ref: ../responses/MissingCredentialsError.yaml
/subscriptions:
get:
operationId: getSubscriptions

Check notice on line 227 in openapi/components/paths/economy.yaml

View workflow job for this annotation

GitHub Actions / lint

vrc-operation-id

Operation returns an array, consider renaming to listSubscriptions.
summary: List Subscriptions
description: 'List all existing Subscriptions. For example, "vrchatplus-monthly" and "vrchatplus-yearly".'
tags:
Expand Down Expand Up @@ -195,7 +252,7 @@
$ref: ../responses/MissingCredentialsError.yaml
/tokenBundles:
get:
operationId: getTokenBundles

Check notice on line 255 in openapi/components/paths/economy.yaml

View workflow job for this annotation

GitHub Actions / lint

vrc-operation-id

Operation returns an array, consider renaming to listTokenBundles.
summary: List Token Bundles
description: Gets the list of token bundles
tags:
Expand Down
26 changes: 26 additions & 0 deletions openapi/components/paths/friends.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,32 @@ paths:
$ref: ../responses/friends/FriendStatusResponse.yaml
"401":
$ref: ../responses/MissingCredentialsError.yaml
"/users/{userId}/boop":
parameters:
- $ref: ../parameters.yaml#/userId
post:
operationId: boop
summary: Send Boop
description: Send a boop to another user.
tags:
- friends
requestBody:
required: true
content:
application/json:
schema:
$ref: ../requests/BoopRequest.yaml
security:
- authCookie: []
responses:
"200":
$ref: ../responses/friends/BoopSuccess.yaml
"400":
$ref: ../responses/friends/NotFriendsError.yaml
"401":
$ref: ../responses/MissingCredentialsError.yaml
"404":
$ref: ../responses/friends/UserDoesntExistError.yaml
components:
securitySchemes:
$ref: ../securitySchemes.yaml
Expand Down
56 changes: 56 additions & 0 deletions openapi/components/paths/inventory.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,62 @@ paths:
$ref: ../responses/inventory/DeleteInventoryItemResponse.yaml
"401":
$ref: ../responses/MissingCredentialsError.yaml
"/inventory/{inventoryItemId}/consume":
parameters:
- $ref: ../parameters.yaml#/inventoryItemId
put:
operationId: consumeOwnInventoryItem
summary: Consume Own Inventory Item
description: Returns the modified InventoryItem object as held by the currently logged in user.
tags:
- inventory
security:
- authCookie: []
responses:
"200":
$ref: ../responses/inventory/ConsumeInventoryItemResponse.yaml
"400":
$ref: ../responses/inventory/InventoryItemNotConsumable.yaml
"401":
$ref: ../responses/MissingCredentialsError.yaml
"/inventory/{inventoryItemId}/equip":
delete:
operationId: unequipOwnInventorySlot
summary: Unequip Own Inventory Slot
description: Unequips the InventoryItem in the given slot of the inventory of the currently logged in user.
tags:
- inventory
parameters:
- $ref: ../parameters.yaml#/inventoryItemSlotAsId
security:
- authCookie: []
responses:
"200":
$ref: ../responses/inventory/UnequipInventorySlotResponse.yaml
"401":
$ref: ../responses/MissingCredentialsError.yaml
put:
operationId: equipOwnInventoryItem
summary: Equip Own Inventory Item
description: Returns the modified InventoryItem object as held by the currently logged in user.
tags:
- inventory
parameters:
- $ref: ../parameters.yaml#/inventoryItemId
requestBody:
content:
application/json:
schema:
$ref: ../requests/EquipInventoryItemRequest.yaml
security:
- authCookie: []
responses:
"200":
$ref: ../responses/inventory/InventoryItemResponse.yaml
"400":
$ref: ../responses/inventory/InventoryItemNotEquippable.yaml
"401":
$ref: ../responses/MissingCredentialsError.yaml
"/users/{userId}/inventory/{inventoryItemId}":
parameters:
- $ref: ../parameters.yaml#/userId
Expand Down
Loading
Loading