openapi: 3.1.0 info: title: Val Town alias me API description: 'Val Town’s public API OpenAPI JSON endpoint: https://api.val.town/openapi.json' termsOfService: https://www.val.town/termsofuse version: '1' servers: - url: https://api.val.town description: Production tags: - name: me description: 'These endpoints give access to details and data from the requesting user.' paths: /v1/me: get: operationId: meGet tags: - me description: Get profile information for the current user responses: '200': description: Your user information, with tier and email included content: application/json: schema: allOf: - $ref: '#/components/schemas/User' - type: object required: - tier - email properties: tier: anyOf: - enum: - free - pro - business description: Your account tier - type: 'null' email: anyOf: - type: string description: Your email address - type: 'null' description: Your user information, with tier and email included example: id: 00000000-0000-0000-0000-000000000000 bio: Hello world username: tmcw email: example@example.com profileImageUrl: null tier: pro /v2/me/vals: get: operationId: meVals2 tags: - me description: '[BETA] List all of a user''s vals for authenticated users' parameters: - schema: type: integer minimum: 0 default: 0 in: query name: offset required: true description: Number of items to skip in order to deliver paginated results - schema: type: integer minimum: 1 maximum: 100 default: 20 in: query name: limit required: true description: Maximum items to return in each paginated response security: - bearerAuth: [] responses: '200': description: A paginated result set content: application/json: schema: type: object required: - data - links properties: data: type: array items: $ref: '#/components/schemas/Val' links: $ref: '#/components/schemas/PaginationLinks' description: A paginated result set components: schemas: User: type: object required: - id - type - bio - username - profileImageUrl - url - links properties: id: type: string format: uuid description: The ID of this user type: enum: - user - org description: Whether this is a user or an organization bio: anyOf: - type: string description: The user’s biography, if they have provided one - type: 'null' username: anyOf: - type: string description: The user’s handle that they chose for themselves. Does not include the @ symbol - type: 'null' profileImageUrl: anyOf: - type: string description: URL that points to the user’s profile image, if one exists format: uri - type: 'null' url: type: string format: uri description: URL of this user’s profile on Val Town’s website links: type: object required: - self properties: self: type: string format: uri description: URL of this user on this API description: User object example: id: 00000000-0000-0000-0000-000000000000 bio: Hello world username: tmcw url: https://val.town/u/tmcw profileImageUrl: null Val: type: object required: - name - id - createdAt - privacy - author - imageUrl - description - links properties: name: type: string id: type: string format: uuid description: The id of the val createdAt: type: string format: date-time privacy: enum: - public - unlisted - private description: This resource's privacy setting. Unlisted resources do not appear on profile pages or elsewhere, but you can link to them. author: type: object required: - type - id - username properties: type: anyOf: - type: string enum: - user - type: string enum: - org id: type: string format: uuid username: anyOf: - type: string - type: 'null' imageUrl: anyOf: - type: string description: The URL of this val's image - type: 'null' description: anyOf: - type: string - type: 'null' links: type: object required: - self - html properties: self: type: string format: uri description: The URL of this resource on this API html: type: string format: uri description: The URL of this resource on Val Town description: A Val PaginationLinks: type: object required: - self properties: self: type: string format: uri description: URL of this page prev: type: string format: uri description: URL of the previous page, if any next: type: string format: uri description: URL of the next page, if any description: Links to use for pagination securitySchemes: bearerAuth: type: http scheme: bearer description: Endpoints that support authorization expect Bearer authentication, using an API token provided from Val Town. externalDocs: url: https://api.val.town/documentation description: Find more info here