Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/VKCOM/vk-api-schema
JSON Schema of VK API
https://github.com/VKCOM/vk-api-schema
api vk vk-api vkapi vkontakte vkontakte-api
Last synced: 3 months ago
JSON representation
JSON Schema of VK API
- Host: GitHub
- URL: https://github.com/VKCOM/vk-api-schema
- Owner: VKCOM
- License: mit
- Created: 2016-08-23T10:11:45.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2024-04-24T09:56:41.000Z (7 months ago)
- Last Synced: 2024-05-15T13:41:26.275Z (6 months ago)
- Topics: api, vk, vk-api, vkapi, vkontakte, vkontakte-api
- Language: Shell
- Homepage:
- Size: 1.51 MB
- Stars: 205
- Watchers: 30
- Forks: 63
- Open Issues: 44
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
- Support: support/objects.json
Awesome Lists containing this project
README
# VK API JSON Schema
This repository contains JSON Schema documents explaining all the VK.COM API objects and methods mentioned [here](https://vk.com/dev).
JSON Schema standard specifications and the most common usage scenarios could be found here: http://json-schema.org/
These schemes are compatible with JSON Schema version draft-07 and VK API [version](https://vk.com/dev/versions) 5.199.
[![Packagist](https://img.shields.io/packagist/v/vkcom/vk-api-schema.svg)](https://packagist.org/packages/vkcom/vk-api-schema)
## Structure
Repository contains several .json files.
* "methods.json" describes all of VK API methods (could be found at [this page](https://vk.com/dev/methods)).
* "objects.json" describes objects which are used in methods responses.
* "responses.json" describes methods responses structure.
* "errors.json" describes possible method errors.
* "schema.json" describes additional keywords used in our implementation, such as "method", "error", "parameter" and others so to extend the canonical specification for our needs.## Samples
### users.get method description:
```JSON
{
"name": "users.get",
"description": "Returns detailed information on users.",
"open": true,
"parameters": [
{
"name": "user_ids",
"description": "User IDs or screen names ('screen_name'). By default, current user ID.",
"type": "array",
"items": {
"type": "string"
},
"maxItems": 1000
},
{
"name": "domains",
"type": "array",
"items": {
"type": "string"
}
},
{
"name": "fields",
"description": "Profile fields to return. Sample values: 'nickname', 'screen_name', 'sex', 'bdate' (birthdate), 'city', 'country', 'timezone', 'photo', 'photo_medium', 'photo_big', 'has_mobile', 'contacts', 'education', 'online', 'counters', 'relation', 'last_seen', 'activity', 'can_write_private_message', 'can_see_all_posts', 'can_post', 'universities';",
"type": "array",
"items": {
"type": "string"
}
},
{
"name": "name_case",
"description": "Case for declension of user name and surname:; 'nom' — nominative (default); 'gen' — genitive ; 'dat' — dative; 'acc' — accusative ; 'ins' — instrumental ; 'abl' — prepositional",
"type": "string"
}
],
"responses": {
"response": {
"$ref": "responses.json#/definitions/users_get_response"
}
}
}
```### market_market_album object description:
```JSON
"market_market_album": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Market album ID",
"minimum": 1
},
"owner_id": {
"type": "integer",
"description": "Market album owner's ID"
},
"title": {
"type": "string",
"description": "Market album title"
},
"count": {
"type": "integer",
"description": "Items number",
"minimum": 0
},
"updated_time": {
"type": "integer",
"description": "Date when album has been updated last time in Unixtime",
"minimum": 0
},
"photo": {
"$ref": "#/definitions/photos_photo"
}
},
"required": [
"id",
"owner_id",
"title",
"count",
"updated_time"
]
}
```