Advertisement
ku_

Roblox ApiProxy Luobu Reverted Version Docs October 2022 V1 (api.s.robloxdev.cn/docs/json/v1)

ku_
Dec 5th, 2023
303
1
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
JSON 27.24 KB | None | 1 0
  1. {
  2.   "x-generator": "NSwag v12.0.3.0 (NJsonSchema v9.12.5.0 (Newtonsoft.Json v11.0.0.0))",
  3.   "swagger": "2.0",
  4.   "info": {
  5.     "title": "Roblox ApiProxy Swagger Documentation",
  6.     "description": "Roblox ApiProxy Swagger",
  7.     "version": "1.0.0"
  8.   },
  9.   "consumes": [
  10.     "application/json"
  11.   ],
  12.   "produces": [
  13.     "application/json"
  14.   ],
  15.   "paths": {
  16.     "/assets/{id:long}/versions": {
  17.       "get": {
  18.         "tags": [
  19.           "Assets"
  20.         ],
  21.         "summary": "Retrieves asset information for the specified asset ID.  The authenticated user must be able to manage the asset.",
  22.         "operationId": "Assets_Versions",
  23.         "parameters": [
  24.           {
  25.             "type": "integer",
  26.             "name": "id",
  27.             "in": "query",
  28.             "required": true,
  29.             "description": "The ID of the asset.",
  30.             "format": "int64",
  31.             "x-nullable": false
  32.           },
  33.           {
  34.             "type": "integer",
  35.             "name": "placeId",
  36.             "in": "query",
  37.             "required": true,
  38.             "description": "The ID of the place.",
  39.             "format": "int64",
  40.             "x-nullable": true
  41.           },
  42.           {
  43.             "type": "integer",
  44.             "name": "page",
  45.             "in": "query",
  46.             "description": "(Optional)The page to retrieve.",
  47.             "format": "int32",
  48.             "default": 1,
  49.             "x-nullable": false
  50.           }
  51.         ],
  52.         "responses": {
  53.           "200": {
  54.             "x-nullable": true,
  55.             "description": "[{\n    \"Id\":536133191,\n    \"AssetId\":226132918,\n    \"VersionNumber\":3,\n    \"RawContentId\":2619739106,\n    \"ParentAssetVersionId\":536132109,\n    \"CreatorType\":1,\n    \"CreatorTargetId\":80502178,\n    \"CreatingUniverseId\":null,\n    \"Created\":\"2015-07-13T11:51:12.9073098-05:00\",\n    \"Updated\":\"2015-07-13T11:51:12.9073098-05:00\"\n}]",
  56.             "schema": {
  57.               "type": "file"
  58.             }
  59.           }
  60.         },
  61.         "deprecated": true
  62.       }
  63.     },
  64.     "/assets/award-badge": {
  65.       "post": {
  66.         "tags": [
  67.           "Assets"
  68.         ],
  69.         "summary": "Award a badge to a user.",
  70.         "operationId": "Assets_AwardBadge",
  71.         "parameters": [
  72.           {
  73.             "type": "integer",
  74.             "name": "userId",
  75.             "in": "query",
  76.             "required": true,
  77.             "description": "The ID of the user.",
  78.             "format": "int64",
  79.             "x-nullable": false
  80.           },
  81.           {
  82.             "type": "integer",
  83.             "name": "badgeId",
  84.             "in": "query",
  85.             "required": true,
  86.             "description": "The ID of the badge.",
  87.             "format": "int64",
  88.             "x-nullable": false
  89.           },
  90.           {
  91.             "type": "integer",
  92.             "name": "placeId",
  93.             "in": "query",
  94.             "required": true,
  95.             "description": "The ID of the place.",
  96.             "format": "int64",
  97.             "x-nullable": false
  98.           }
  99.         ],
  100.         "responses": {
  101.           "200": {
  102.             "x-nullable": true,
  103.             "description": "{userName} won {badgeCreatorName}'s \"{badgeName}\" award! (if successful)",
  104.             "schema": {
  105.               "type": "file"
  106.             }
  107.           }
  108.         }
  109.       }
  110.     },
  111.     "/my/balance": {
  112.       "get": {
  113.         "tags": [
  114.           "Currency"
  115.         ],
  116.         "summary": "Returns the Robux and Ticket balances for the currently authenticated user.",
  117.         "operationId": "Currency_GetBalance",
  118.         "responses": {
  119.           "200": {
  120.             "x-nullable": true,
  121.             "description": "{\n\"robux\":10\n}",
  122.             "schema": {
  123.               "type": "file"
  124.             }
  125.           },
  126.           "401": {
  127.             "description": "Unauthorized"
  128.           },
  129.           "403": {
  130.             "description": "Forbidden"
  131.           }
  132.         }
  133.       }
  134.     },
  135.     "/users/{userId:long}/friends": {
  136.       "get": {
  137.         "tags": [
  138.           "Friends"
  139.         ],
  140.         "summary": "Retrieves a paged list of friends for the specified user.",
  141.         "operationId": "Friends_GetFriends",
  142.         "parameters": [
  143.           {
  144.             "type": "integer",
  145.             "name": "userId",
  146.             "in": "query",
  147.             "required": true,
  148.             "description": "The ID of the user.",
  149.             "format": "int64",
  150.             "x-nullable": false
  151.           },
  152.           {
  153.             "type": "integer",
  154.             "name": "page",
  155.             "in": "query",
  156.             "description": "(Optional) The page to retrieve. Value\n            is set to 1 by default.",
  157.             "format": "int32",
  158.             "default": 1,
  159.             "x-nullable": false
  160.           }
  161.         ],
  162.         "responses": {
  163.           "200": {
  164.             "x-nullable": true,
  165.             "description": "[{\n\"Id\":12345678,\n\"Username\":\"user\",\n\"AvatarUri\":\"\",\n\"AvatarFinal\":true,\n\"IsOnline\":true\n}]",
  166.             "schema": {
  167.               "type": "file"
  168.             }
  169.           }
  170.         }
  171.       }
  172.     },
  173.     "/user/accept-friend-request": {
  174.       "post": {
  175.         "tags": [
  176.           "Friends"
  177.         ],
  178.         "summary": "Accept a friend request.",
  179.         "operationId": "Friends_AcceptFriendRequest",
  180.         "parameters": [
  181.           {
  182.             "type": "integer",
  183.             "name": "requesterUserId",
  184.             "in": "query",
  185.             "required": true,
  186.             "description": "The ID of the requester.",
  187.             "format": "int32",
  188.             "x-nullable": false
  189.           }
  190.         ],
  191.         "responses": {
  192.           "200": {
  193.             "x-nullable": true,
  194.             "description": "{\n\"success\":true, \n\"message\":\"Success\"\n}",
  195.             "schema": {
  196.               "type": "file"
  197.             }
  198.           },
  199.           "401": {
  200.             "description": "Unauthorized"
  201.           },
  202.           "403": {
  203.             "description": "Forbidden"
  204.           }
  205.         }
  206.       }
  207.     },
  208.     "/user/decline-friend-request": {
  209.       "post": {
  210.         "tags": [
  211.           "Friends"
  212.         ],
  213.         "summary": "Decline a friend request.",
  214.         "operationId": "Friends_DeclineFriendRequest",
  215.         "parameters": [
  216.           {
  217.             "type": "integer",
  218.             "name": "requesterUserId",
  219.             "in": "query",
  220.             "required": true,
  221.             "description": "The ID of the requester.",
  222.             "format": "int32",
  223.             "x-nullable": false
  224.           }
  225.         ],
  226.         "responses": {
  227.           "200": {
  228.             "x-nullable": true,
  229.             "description": "{\n\"success\":true, \n\"message\":\"Success\"\n}",
  230.             "schema": {
  231.               "type": "file"
  232.             }
  233.           },
  234.           "401": {
  235.             "description": "Unauthorized"
  236.           },
  237.           "403": {
  238.             "description": "Forbidden"
  239.           }
  240.         }
  241.       }
  242.     },
  243.     "/user/request-friendship": {
  244.       "post": {
  245.         "tags": [
  246.           "Friends"
  247.         ],
  248.         "summary": "Send a friend request to the specified user.",
  249.         "operationId": "Friends_RequestFriendship",
  250.         "parameters": [
  251.           {
  252.             "type": "integer",
  253.             "name": "recipientUserId",
  254.             "in": "query",
  255.             "required": true,
  256.             "description": "The userId of the recipient.",
  257.             "format": "int64",
  258.             "x-nullable": false
  259.           }
  260.         ],
  261.         "responses": {
  262.           "200": {
  263.             "x-nullable": true,
  264.             "description": "{\n\"success\":true, \n\"message\":\"Success\"\n}",
  265.             "schema": {
  266.               "type": "file"
  267.             }
  268.           },
  269.           "401": {
  270.             "description": "Unauthorized"
  271.           },
  272.           "403": {
  273.             "description": "Forbidden"
  274.           }
  275.         }
  276.       }
  277.     },
  278.     "/user/get-friendship-count": {
  279.       "get": {
  280.         "tags": [
  281.           "Friends"
  282.         ],
  283.         "summary": "Get number of friends.",
  284.         "operationId": "Friends_GetFriendshipCount",
  285.         "parameters": [
  286.           {
  287.             "type": "integer",
  288.             "name": "userId",
  289.             "in": "query",
  290.             "required": true,
  291.             "description": "(Optional)The ID of the user, or the ID of the autheticated user if not provided.",
  292.             "format": "int64",
  293.             "x-nullable": true
  294.           }
  295.         ],
  296.         "responses": {
  297.           "200": {
  298.             "x-nullable": true,
  299.             "description": "{\n\"success\":true, \n\"message\":\"Success\", \n\"count\":10\n}",
  300.             "schema": {
  301.               "type": "file"
  302.             }
  303.           },
  304.           "401": {
  305.             "description": "Unauthorized"
  306.           },
  307.           "403": {
  308.             "description": "Forbidden"
  309.           }
  310.         }
  311.       }
  312.     },
  313.     "/user/unfriend": {
  314.       "post": {
  315.         "tags": [
  316.           "Friends"
  317.         ],
  318.         "summary": "UnFriend a user",
  319.         "operationId": "Friends_UnFriend",
  320.         "parameters": [
  321.           {
  322.             "type": "integer",
  323.             "name": "friendUserId",
  324.             "in": "query",
  325.             "required": true,
  326.             "description": "The ID of the friend.",
  327.             "format": "int64",
  328.             "x-nullable": false
  329.           }
  330.         ],
  331.         "responses": {
  332.           "200": {
  333.             "x-nullable": true,
  334.             "description": "{\n\"success\":true, \n\"message\":\"Success\"\n}",
  335.             "schema": {
  336.               "type": "file"
  337.             }
  338.           },
  339.           "401": {
  340.             "description": "Unauthorized"
  341.           },
  342.           "403": {
  343.             "description": "Forbidden"
  344.           }
  345.         }
  346.       }
  347.     },
  348.     "/user/follow": {
  349.       "post": {
  350.         "tags": [
  351.           "Friends"
  352.         ],
  353.         "summary": "Follow a particular user",
  354.         "operationId": "Friends_Follow",
  355.         "parameters": [
  356.           {
  357.             "type": "integer",
  358.             "name": "followedUserId",
  359.             "in": "query",
  360.             "required": true,
  361.             "description": "The ID of the user to follow.",
  362.             "format": "int64",
  363.             "x-nullable": false
  364.           }
  365.         ],
  366.         "responses": {
  367.           "200": {
  368.             "x-nullable": true,
  369.             "description": "{\n\"success\":true, \n\"message\":\"Success\"\n}",
  370.             "schema": {
  371.               "type": "file"
  372.             }
  373.           },
  374.           "401": {
  375.             "description": "Unauthorized"
  376.           },
  377.           "403": {
  378.             "description": "Forbidden"
  379.           }
  380.         }
  381.       }
  382.     },
  383.     "/user/unfollow": {
  384.       "post": {
  385.         "tags": [
  386.           "Friends"
  387.         ],
  388.         "summary": "UnFollow a particular user",
  389.         "operationId": "Friends_UnFollow",
  390.         "parameters": [
  391.           {
  392.             "type": "integer",
  393.             "name": "followedUserId",
  394.             "in": "query",
  395.             "required": true,
  396.             "description": "The ID of the followed user.",
  397.             "format": "int64",
  398.             "x-nullable": false
  399.           }
  400.         ],
  401.         "responses": {
  402.           "200": {
  403.             "x-nullable": true,
  404.             "description": "{\n\"success\":true, \n\"message\":\"Success\"\n}",
  405.             "schema": {
  406.               "type": "file"
  407.             }
  408.           },
  409.           "401": {
  410.             "description": "Unauthorized"
  411.           },
  412.           "403": {
  413.             "description": "Forbidden"
  414.           }
  415.         }
  416.       }
  417.     },
  418.     "/users/{userId:long}/groups": {
  419.       "get": {
  420.         "tags": [
  421.           "Groups"
  422.         ],
  423.         "summary": "Lists a user's groups.",
  424.         "operationId": "Groups_GetGroups",
  425.         "parameters": [
  426.           {
  427.             "type": "integer",
  428.             "name": "userId",
  429.             "in": "query",
  430.             "required": true,
  431.             "description": "The ID of the user.",
  432.             "format": "int64",
  433.             "x-nullable": false
  434.           }
  435.         ],
  436.         "responses": {
  437.           "200": {
  438.             "x-nullable": true,
  439.             "description": "[{\n    \"Id\": 696519,\n    \"Name\": \"Orinthians\",\n    \"EmblemId\": 135321582,\n    \"EmblemUrl\": \"http://www.s.robloxdev.cn/asset/?id=135321582\",\n    \"Rank\": 254,\n    \"Role\": \"Council\",\n    \"IsInClan\": false,\n    \"IsPrimary\": false\n}, {\n    \"Id\": 679727,\n    \"Name\": \"ROBLOX Community Staff and Forum Users\",\n    \"EmblemId\": 90708870,\n    \"EmblemUrl\": \"http://www.s.robloxdev.cn/asset/?id=90708870\",\n    \"Rank\": 245,\n    \"Role\": \"Other Staff\",\n    \"IsInClan\": false,\n    \"IsPrimary\": false\n}]",
  440.             "schema": {
  441.               "type": "file"
  442.             }
  443.           }
  444.         }
  445.       }
  446.     },
  447.     "/groups/{groupId}": {
  448.       "get": {
  449.         "tags": [
  450.           "Groups"
  451.         ],
  452.         "summary": "Retrieves information for the specified group ID.",
  453.         "operationId": "Groups_GetGroupInfo",
  454.         "parameters": [
  455.           {
  456.             "type": "integer",
  457.             "name": "groupId",
  458.             "in": "query",
  459.             "required": true,
  460.             "description": "The ID of the group.",
  461.             "format": "int32",
  462.             "x-nullable": false
  463.           }
  464.         ],
  465.         "responses": {
  466.           "200": {
  467.             "x-nullable": true,
  468.             "description": "{\n    \"Name\":\"Group name\",\n    \"Id\":1234567,\n    \"Owner\":\n    {\n       \"Name\":\"owner\",\n       \"Id\":12345678\n    },\n    \"EmblemUrl\":\"http://www.s.robloxdev.cn/asset/?id=12345678\",\n    \"Description\":\"\",\n    \"Roles\":[{\"Name\":\"Panem Citizens\",\"Rank\":1}]\n}",
  469.             "schema": {
  470.               "type": "file"
  471.             }
  472.           }
  473.         }
  474.       }
  475.     },
  476.     "/groups/{groupId}/allies": {
  477.       "get": {
  478.         "tags": [
  479.           "Groups"
  480.         ],
  481.         "summary": "Retrieves a paged list of allied groups.",
  482.         "operationId": "Groups_GetAllies",
  483.         "parameters": [
  484.           {
  485.             "type": "integer",
  486.             "name": "groupId",
  487.             "in": "query",
  488.             "required": true,
  489.             "description": "The ID of the group",
  490.             "format": "int32",
  491.             "x-nullable": false
  492.           },
  493.           {
  494.             "type": "integer",
  495.             "name": "page",
  496.             "in": "query",
  497.             "description": "(Optional) The page to retrieve.",
  498.             "format": "int32",
  499.             "default": 1,
  500.             "x-nullable": false
  501.           }
  502.         ],
  503.         "responses": {
  504.           "200": {
  505.             "x-nullable": true,
  506.             "description": "{\n\"Groups\":\n[\n{\"Name\":\"\",\n \"Id\":123456,\n \"Owner\":{\n   \"Name\":\"\",\n   \"Id\":23456789\n  },\n  \"EmblemUrl\":\"http://www.s.robloxdev.cn/asset/?id=189284884\",\n  \"Description\":\"\",\n  \"Roles\":[{\"Name\":\"Advisor\",\"Rank\":1}]\n }\n],\n\"FinalPage\":true\n            }",
  507.             "schema": {
  508.               "type": "file"
  509.             }
  510.           }
  511.         }
  512.       }
  513.     },
  514.     "/groups/{groupId}/enemies": {
  515.       "get": {
  516.         "tags": [
  517.           "Groups"
  518.         ],
  519.         "summary": "Retrieves a paged list of enemy groups.",
  520.         "operationId": "Groups_GetEnemies",
  521.         "parameters": [
  522.           {
  523.             "type": "integer",
  524.             "name": "groupId",
  525.             "in": "query",
  526.             "required": true,
  527.             "description": "The ID of the group",
  528.             "format": "int32",
  529.             "x-nullable": false
  530.           },
  531.           {
  532.             "type": "integer",
  533.             "name": "page",
  534.             "in": "query",
  535.             "description": "(Optional) The page to retrieve.",
  536.             "format": "int32",
  537.             "default": 1,
  538.             "x-nullable": false
  539.           }
  540.         ],
  541.         "responses": {
  542.           "200": {
  543.             "x-nullable": true,
  544.             "description": "{\n\"Groups\":\n[\n{\"Name\":\"\",\n \"Id\":123456,\n \"Owner\":{\n   \"Name\":\"\",\n   \"Id\":23456789\n  },\n  \"EmblemUrl\":\"http://www.s.robloxdev.cn/asset/?id=189284884\",\n  \"Description\":\"\",\n  \"Roles\":[{\"Name\":\"Advisor\",\"Rank\":1}]\n }\n],\n\"FinalPage\":true\n            }",
  545.             "schema": {
  546.               "type": "file"
  547.             }
  548.           }
  549.         }
  550.       }
  551.     },
  552.     "/incoming-items/counts": {
  553.       "get": {
  554.         "tags": [
  555.           "IncomingItems"
  556.         ],
  557.         "summary": "Get number of incoming items.",
  558.         "operationId": "IncomingItems_GetCounts",
  559.         "responses": {
  560.           "200": {
  561.             "x-nullable": true,
  562.             "description": "{\"unreadMessageCount\": 1, \"friendRequestsCount\": 2}",
  563.             "schema": {
  564.               "type": "file"
  565.             }
  566.           }
  567.         }
  568.       }
  569.     },
  570.     "/marketplace/productinfo": {
  571.       "get": {
  572.         "tags": [
  573.           "Marketplace"
  574.         ],
  575.         "summary": "Returns the product info for the specified asset.",
  576.         "operationId": "Marketplace_GetProductInfo",
  577.         "parameters": [
  578.           {
  579.             "type": "integer",
  580.             "name": "assetId",
  581.             "in": "query",
  582.             "required": true,
  583.             "description": "The ID of the asset.",
  584.             "format": "int64",
  585.             "x-nullable": false
  586.           }
  587.         ],
  588.         "responses": {
  589.           "200": {
  590.             "x-nullable": true,
  591.             "description": "{\n    \"TargetId\":123456789,\n    \"ProductType\":\"User Product\",\n    \"AssetId\":123456789,\n    \"ProductId\":24870409,\n    \"Name\":\"Hat\",\n    \"Description\":\"\",\n    \"AssetTypeId\":8,\n    \"Creator\":{\"Id\":1,\"Name\":\"ROBLOX\"},\n    \"IconImageAssetId\":0,\n    \"Created\":\"2015-06-25T20:07:49.147Z\",\n    \"Updated\":\"2015-07-11T20:07:51.863Z\",\n    \"PriceInRobux\":350,\n    \"PriceInTickets\":null,\n    \"Sales\":0,\n    \"IsNew\":true,\n    \"IsForSale\":true,\n    \"IsPublicDomain\":false,\n    \"IsLimited\":false,\n    \"IsLimitedUnique\":false,\n    \"Remaining\":null,\n    \"MinimumMembershipLevel\":0,\n    \"ContentRatingTypeId\":0\n}",
  592.             "schema": {
  593.               "type": "file"
  594.             }
  595.           }
  596.         }
  597.       }
  598.     },
  599.     "/marketplace/game-pass-product-info": {
  600.       "get": {
  601.         "tags": [
  602.           "Marketplace"
  603.         ],
  604.         "summary": "Returns the product info for the specified game pass.",
  605.         "operationId": "Marketplace_GetGamePassProductInfo",
  606.         "parameters": [
  607.           {
  608.             "type": "integer",
  609.             "name": "gamePassId",
  610.             "in": "query",
  611.             "required": true,
  612.             "description": "The ID of the asset.",
  613.             "format": "int64",
  614.             "x-nullable": false
  615.           }
  616.         ],
  617.         "responses": {
  618.           "200": {
  619.             "x-nullable": true,
  620.             "description": "{\n    \"TargetId\":123456789,\n    \"ProductType\":\"Game Pass\",\n    \"AssetId\":123456789,\n    \"ProductId\":24870409,\n    \"Name\":\"Hat\",\n    \"Description\":\"\",\n    \"AssetTypeId\":8,\n    \"Creator\":{\"Id\":1,\"Name\":\"ROBLOX\"},\n    \"IconImageAssetId\":0,\n    \"Created\":\"2015-06-25T20:07:49.147Z\",\n    \"Updated\":\"2015-07-11T20:07:51.863Z\",\n    \"PriceInRobux\":350,\n    \"PriceInTickets\":null,\n    \"Sales\":0,\n    \"IsNew\":true,\n    \"IsForSale\":true,\n    \"IsPublicDomain\":false,\n    \"IsLimited\":false,\n    \"IsLimitedUnique\":false,\n    \"Remaining\":null,\n    \"MinimumMembershipLevel\":0,\n    \"ContentRatingTypeId\":0\n}",
  621.             "schema": {
  622.               "type": "file"
  623.             }
  624.           }
  625.         }
  626.       }
  627.     },
  628.     "/ownership/hasasset": {
  629.       "get": {
  630.         "tags": [
  631.           "Ownership"
  632.         ],
  633.         "summary": "Checks if a user owns the specified asset.",
  634.         "operationId": "Ownership_HasAsset",
  635.         "parameters": [
  636.           {
  637.             "type": "integer",
  638.             "name": "userId",
  639.             "in": "query",
  640.             "required": true,
  641.             "description": "The ID of the user.",
  642.             "format": "int64",
  643.             "x-nullable": false
  644.           },
  645.           {
  646.             "type": "integer",
  647.             "name": "assetId",
  648.             "in": "query",
  649.             "required": true,
  650.             "description": "The ID of the asset.",
  651.             "format": "int64",
  652.             "x-nullable": false
  653.           }
  654.         ],
  655.         "responses": {
  656.           "200": {
  657.             "x-nullable": true,
  658.             "description": "true/false",
  659.             "schema": {
  660.               "type": "file"
  661.             }
  662.           }
  663.         }
  664.       }
  665.     },
  666.     "/reference/deviceinfo": {
  667.       "get": {
  668.         "tags": [
  669.           "Reference"
  670.         ],
  671.         "summary": "Get device info.",
  672.         "operationId": "Reference_DeviceInfoJson",
  673.         "responses": {
  674.           "200": {
  675.             "x-nullable": true,
  676.             "description": "{\n\"PlatformType\": \"platform name\",\n\"DeviceType\": \"device type\",\n\"OperatingSystemType\": \"OS type\"\n}",
  677.             "schema": {
  678.               "type": "file"
  679.             }
  680.           }
  681.         }
  682.       }
  683.     },
  684.     "/users/{userId:long}": {
  685.       "get": {
  686.         "tags": [
  687.           "Users"
  688.         ],
  689.         "summary": "Retrieves user information for the specified user ID.",
  690.         "operationId": "Users_GetUser",
  691.         "parameters": [
  692.           {
  693.             "type": "integer",
  694.             "name": "userId",
  695.             "in": "query",
  696.             "required": true,
  697.             "description": "The ID of the user.",
  698.             "format": "int64",
  699.             "x-nullable": false
  700.           }
  701.         ],
  702.         "responses": {
  703.           "200": {
  704.             "x-nullable": true,
  705.             "description": "{\n\"Id\": 12345678,\n\"Username\": \"user name\"\n}",
  706.             "schema": {
  707.               "type": "file"
  708.             }
  709.           }
  710.         }
  711.       }
  712.     },
  713.     "/users/get-by-username": {
  714.       "get": {
  715.         "tags": [
  716.           "Users"
  717.         ],
  718.         "summary": "Retrieves user information for the specified username.",
  719.         "operationId": "Users_GetUserByUserName",
  720.         "parameters": [
  721.           {
  722.             "type": "string",
  723.             "name": "username",
  724.             "in": "query",
  725.             "required": true,
  726.             "description": "The name of the user.",
  727.             "x-nullable": true
  728.           }
  729.         ],
  730.         "responses": {
  731.           "200": {
  732.             "x-nullable": true,
  733.             "description": "{\"Id\": 12345678, \"Username\":\"user name\"}",
  734.             "schema": {
  735.               "type": "file"
  736.             }
  737.           }
  738.         }
  739.       }
  740.     },
  741.     "/users/{userId:long}/canmanage/{assetId:long}": {
  742.       "get": {
  743.         "tags": [
  744.           "Users"
  745.         ],
  746.         "summary": "Returns whether the user can manage a given asset.",
  747.         "operationId": "Users_CanManage",
  748.         "parameters": [
  749.           {
  750.             "type": "integer",
  751.             "name": "userId",
  752.             "in": "query",
  753.             "required": true,
  754.             "description": "The ID of the user.",
  755.             "format": "int64",
  756.             "x-nullable": false
  757.           },
  758.           {
  759.             "type": "integer",
  760.             "name": "assetId",
  761.             "in": "query",
  762.             "required": true,
  763.             "description": "The ID of the asset.",
  764.             "format": "int64",
  765.             "x-nullable": false
  766.           }
  767.         ],
  768.         "responses": {
  769.           "200": {
  770.             "x-nullable": true,
  771.             "description": "{\n\"Success\": true, \n\"CanManage\": false\n}",
  772.             "schema": {
  773.               "type": "file"
  774.             }
  775.           }
  776.         },
  777.         "depreated": true
  778.       }
  779.     },
  780.     "/windows/v1/report-purchase": {
  781.       "post": {
  782.         "tags": [
  783.           "Windows"
  784.         ],
  785.         "summary": "After a purchase has been made with the Windows Store, validates the receipt and grants the user the products.",
  786.         "operationId": "Windows_ProcessWindowsStorePurchase",
  787.         "parameters": [
  788.           {
  789.             "name": "transactionIds",
  790.             "in": "body",
  791.             "required": true,
  792.             "description": "A list of transactionIds that are contained in the , which need to be granted.",
  793.             "schema": {
  794.               "type": "array",
  795.               "items": {
  796.                 "type": "string",
  797.                 "format": "guid"
  798.               }
  799.             },
  800.             "x-nullable": true
  801.           },
  802.           {
  803.             "type": "string",
  804.             "name": "receipt",
  805.             "in": "query",
  806.             "required": true,
  807.             "description": "The receipt from the purchase or the app. Used to verify purchase authenticity.",
  808.             "x-nullable": true
  809.           },
  810.           {
  811.             "type": "boolean",
  812.             "name": "isRetry",
  813.             "in": "query",
  814.             "description": "Whether the purchase is a retry.",
  815.             "default": false,
  816.             "x-nullable": false
  817.           }
  818.         ],
  819.         "responses": {
  820.           "200": {
  821.             "x-nullable": true,
  822.             "description": "If Windows Store purchasing is not enabled, returns a status code 404 Not Found result.\n\nIf the user is not authenticated, returns a status code 401 Unauthorized result.\n\nIf the purchases succeeded OR the purchases corresponding to the transactionIds has already been granted, returns a status code 200 OK result.\nA combination of transactions that have been granted and transactions that are successfully granted will also return 200 OK.\n\nIf granting the purchase failed due to an unexpected error, returns a status code 500 Error result.\nIf granting the purchase failed due to a verification problem, returns a status code 403 Forbidden result.\nIn either case, the response also contains a JSON object in the following format:\n\n{\n    status : \"Failure\",\n    errors : [\n        {\n            message: \"Sorry, an unexpected error occurred. Please try again later.\",\n            code: 0\n        }\n    ]\n}\n\nwhere there is exactly one error and the code is one of the following:\n0 - Unexpected error\n1 - Verification failed",
  823.             "schema": {
  824.               "type": "file"
  825.             }
  826.           }
  827.         }
  828.       }
  829.     }
  830.   },
  831.   "definitions": {
  832.     "GroupMembershipModel": {
  833.       "type": "object",
  834.       "additionalProperties": false,
  835.       "required": [
  836.         "Id",
  837.         "EmblemId",
  838.         "Rank",
  839.         "IsPrimary",
  840.         "IsInClan"
  841.       ],
  842.       "properties": {
  843.         "Name": {
  844.           "type": "string"
  845.         },
  846.         "Id": {
  847.           "type": "integer",
  848.           "format": "int64"
  849.         },
  850.         "EmblemUrl": {
  851.           "type": "string"
  852.         },
  853.         "EmblemId": {
  854.           "type": "integer",
  855.           "format": "int64"
  856.         },
  857.         "Rank": {
  858.           "type": "integer",
  859.           "format": "int32"
  860.         },
  861.         "Role": {
  862.           "type": "string"
  863.         },
  864.         "IsPrimary": {
  865.           "type": "boolean"
  866.         },
  867.         "IsInClan": {
  868.           "type": "boolean"
  869.         }
  870.       }
  871.     },
  872.     "IGroupMembership": {
  873.       "type": "object",
  874.       "x-abstract": true,
  875.       "additionalProperties": false
  876.     }
  877.   }
  878. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement