UNPKG

@dntlab/swagger-dean

Version:

swagger api for DeArchNet project

1,524 lines 81.7 kB
openapi: 3.0.1 info: title: DeArchNet rest API description: Specification of REST API for DeArchNet Project version: 0.1.2 servers: - url: 'https://localhost:8080' paths: /auth/login: post: summary: Logs previously registered user in operationId: rest.auth.login.post requestBody: required: true content: application/json: schema: type: object required: - account properties: account: type: object required: - email - password properties: email: type: string format: email minimum: 6 maximum: 254 password: type: string minimum: 10 maximum: 50 pattern: '^(?=.{10,50}$)(?=.*[0-9])(?=.*[a-zA-Z])(([a-zA-Z0-9!@#$%^&*()_+\-=\[\]{};:"\\|,.<>\/?])\2?(?!\2))+$' responses: '200': description: Successfull login content: application/json: schema: type: object required: - token - user_id properties: token: type: string description: JWT Token user_id: type: string description: User ID '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' /auth/signup: post: summary: Registers new user in the system operationId: rest.auth.signup.post requestBody: required: true content: application/json: schema: type: object required: - profile - account properties: profile: type: object required: - full_name properties: full_name: type: string minimum: 1 maximum: 100 example: Patricia Santos account: $ref: '#/paths/~1auth~1login/post/requestBody/content/application~1json/schema/properties/account' responses: '200': description: Successfully new user registered '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' '/auth/{accountId}/verify_email': get: summary: Verify email parameters: - in: path name: accountId required: true schema: type: string description: Account ID operationId: rest.auth.verify_email.get responses: '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' /search/attributes: get: summary: Fetches metadata of the attributes for search operationId: rest.search.attributes.index.get responses: '200': description: Successfull fetch content: application/json: schema: type: object required: - search_attributes - sort_attributes properties: search_attributes: type: array items: type: object required: - name - type - operators properties: name: type: string example: Search query description: Visible name & identifier. type: type: string enum: - string - geo - number example: string operators: type: array description: Visible names of operators & identifiers. items: type: string enum: - lt - lte - eq - neq - gt - gte example: eq suggested_query_url: type: object description: По этому URL можно узнать suggested_values по одной букве. Не может быть одновременно с suggested_values. example: 'http://example.com/suggest/csi?q=examp' required: - href - method properties: href: type: string example: 'http://example.com/suggest/csi?q=' method: type: string example: GET suggested_values: type: array description: Список suggested elements. Должны интерпретироваться в зависимости от type. Не может быть одновременно с suggested_query_url. items: $ref: '#/paths/~1search~1attributes/get/responses/200/content/application~1json/schema/properties/search_attributes/items/properties/default_selection' default_selection: oneOf: - type: string - type: number - type: object sort_attributes: type: array items: type: object properties: name: type: string description: 'Например, created, reviews, likes, rating.' example: created '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' /search/results: get: summary: Fetches data of requested search items operationId: rest.search.results.get parameters: - in: query name: params description: Stringifyied json data of search request schema: type: string responses: '200': description: Successfull fetch content: application/json: schema: type: object required: - total_matches_count - search_results properties: total_matches_count: type: number example: 125 search_results: type: array items: type: object required: - entity_kind - view_type - attributes properties: entity_kind: type: string example: Project view_type: type: string example: basic item: type: object '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' '/search/suggest/{attributeName}': get: summary: Suggestion for autocomplete request in response operationId: rest.search.suggest.get parameters: - in: query name: q required: true description: Query. schema: type: string - in: path name: attributeName required: true description: Name of the attribute. schema: type: string responses: '200': description: Successfull fetch content: application/json: schema: type: array items: type: string '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' /users: get: summary: Fetches data of all registered users operationId: rest.users.index security: - jwt: [] responses: '200': description: Successfull fetch content: application/json: schema: type: array items: type: object required: - profile_id - full_name - locations - rate properties: profile_id: type: string example: u2349f7hb98gv7rbh89grhg79h full_name: type: string example: Helena Brauer image_url: $ref: '#/paths/~1projects/get/responses/200/content/application~1json/schema/items/properties/cover' locations: type: array items: type: object $ref: '#/paths/~1projects/post/requestBody/content/application~1json/schema/properties/location' occupation: type: string example: Landscape designer organization: type: string example: Scape store website: type: string example: www.scapestore.com rate: $ref: '#/paths/~1project~1%7BprojectId%7D~1reviews/post/requestBody/content/application~1json/schema/properties/rate' '404': description: The specified resource was not found. default: description: Unexpected error content: application/json: schema: type: object /projects: post: summary: Fetches data of creating project request operationId: rest.projects.post security: - jwt: [] requestBody: required: true content: application/json: schema: type: object required: - title - description - categories - license - location - cover - public properties: title: type: string example: Country house description: type: string example: 'As anyone who has ever moved into a modern city flat can attest, injecting big white spaces with character can be a challenge.' start_date: $ref: '#/paths/~1projects/post/requestBody/content/application~1json/schema/properties/end_date' end_date: type: string categories: type: array items: type: string example: Dogs in architecture styles: type: array items: type: string example: Asian csi_codes: type: array items: type: string example: 01100 Summary license: type: string example: NoDerivs CC BY-ND tools: type: string example: 'some items, goes here' materials: type: string example: simple list of materials location: type: object required: - country - city - center properties: country: type: string example: USA state: type: string example: California city: type: string example: Irvine street_1: type: string street_2: type: string center: type: object required: - lat - lng properties: lat: type: number example: 38.8951 lng: type: number example: -77.0364 cover: type: string format: binary files: type: array items: $ref: '#/paths/~1projects/post/requestBody/content/application~1json/schema/properties/cover' owners: type: array items: $ref: '#/paths/~1users/get/responses/200/content/application~1json/schema/items' participants: type: array items: $ref: '#/paths/~1users/get/responses/200/content/application~1json/schema/items' public: type: boolean responses: '201': description: Successfully new project created content: application/json: schema: type: object required: - entity_id - creation_date - title - description - categories - styles - csi_codes - license - location - cover - files - creator - owners - participants - rate - likes - views - followers - state - comments - private - published - reaction properties: entity_id: type: string example: ugv23r3yuvu3yv1ierb1r creation_date: $ref: '#/paths/~1folders/put/responses/201/content/application~1json/schema/properties/created' title: type: string example: Dogs in architecture description: type: string example: Here description goes start_date: $ref: '#/paths/~1folders/put/responses/201/content/application~1json/schema/properties/created' end_date: $ref: '#/paths/~1folders/put/responses/201/content/application~1json/schema/properties/created' categories: type: array items: type: string example: Dogs in architecture styles: type: array items: type: string example: Asian csi_codes: type: array items: type: string example: 01200 Price and Payment Procedures license: type: string example: NoDerivs CC BY-ND tools: type: string materials: type: string location: $ref: '#/paths/~1projects/post/requestBody/content/application~1json/schema/properties/location' cover: type: string files: type: array items: type: string creator: $ref: '#/paths/~1users/get/responses/200/content/application~1json/schema/items' owners: $ref: '#/paths/~1users/get/responses/200/content/application~1json/schema' participants: $ref: '#/paths/~1users/get/responses/200/content/application~1json/schema' rate: $ref: '#/paths/~1project~1%7BprojectId%7D~1reviews/post/requestBody/content/application~1json/schema/properties/rate' likes: type: number views: type: number followers: type: number state: type: string enum: - Active - Completed example: Active comments: type: array items: $ref: '#/paths/~1comment~1%7BcommentId%7D~1reply/post/responses/201/content/application~1json/schema' private: type: boolean published: type: boolean reaction: type: object properties: liked: type: boolean reviewed: type: boolean followed: type: boolean '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' get: summary: Fetches data of all projects you were created parameters: - in: query name: published required: true schema: type: boolean description: Published or unpublished projects - name: offset in: query description: The number of items to skip before starting to collect the result set schema: type: integer minimum: 0 maximum: 100 - in: query name: limit schema: type: integer minimum: 0 maximum: 100 description: The numbers of items to return operationId: rest.projects.index security: - jwt: [] responses: '200': description: Successfull fetch content: application/json: schema: type: array items: type: object required: - entity_id - creation_date - cover - title - categories - creator - location - rate - likes - views - reaction properties: entity_id: type: string creation_date: $ref: '#/paths/~1folders/put/responses/201/content/application~1json/schema/properties/created' cover: type: string example: assets/images/image02.png title: type: string example: Beauty categories: type: array items: type: string example: Dogs in architecture creator: $ref: '#/paths/~1users/get/responses/200/content/application~1json/schema/items' location: $ref: '#/paths/~1projects/post/requestBody/content/application~1json/schema/properties/location' rate: $ref: '#/paths/~1project~1%7BprojectId%7D~1reviews/post/requestBody/content/application~1json/schema/properties/rate' likes: type: number minimum: 0 example: 123 views: type: number minimum: 0 example: 4223 reaction: $ref: '#/paths/~1projects/post/responses/201/content/application~1json/schema/properties/reaction' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' /projects/participation: get: summary: Fetches data of all projects you are participating in parameters: - $ref: '#/paths/~1projects/get/parameters/1' - $ref: '#/paths/~1projects/get/parameters/2' operationId: rest.project.participation.index security: - jwt: [] responses: '200': description: Successfull fetch content: application/json: schema: $ref: '#/paths/~1projects/get/responses/200/content/application~1json/schema' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' /projects/ownership: get: summary: Fetches data of all projects you are own parameters: - $ref: '#/paths/~1projects/get/parameters/1' - $ref: '#/paths/~1projects/get/parameters/2' operationId: rest.project.ownership.index security: - jwt: [] responses: '200': description: Successfull fetch content: application/json: schema: $ref: '#/paths/~1projects/get/responses/200/content/application~1json/schema' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' '/project/{projectId}': put: summary: Edit project parameters: - in: path name: projectId required: true schema: type: string description: Project ID operationId: rest.projects.put security: - jwt: [] requestBody: required: true content: application/json: schema: $ref: '#/paths/~1projects/post/requestBody/content/application~1json/schema' responses: '200': description: Successfull fetch content: application/json: schema: $ref: '#/paths/~1projects/post/responses/201/content/application~1json/schema' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' get: summary: Get project detail information parameters: - in: path name: projectId required: true schema: type: string description: Project ID operationId: rest.projects.get security: - jwt: [] responses: '200': description: Successfull fetch content: application/json: schema: $ref: '#/paths/~1projects/post/responses/201/content/application~1json/schema' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' delete: summary: delete project parameters: - in: path name: projectId required: true schema: type: string description: Project ID operationId: rest.projects.delete security: - jwt: [] responses: '204': description: Project was deleted. '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' '/project/{projectId}/participants': post: summary: 'Invite a user to the project, join the project, send request to join project' parameters: - in: path name: projectId required: true schema: type: string description: Project ID operationId: rest.project.participants.post security: - jwt: [] requestBody: required: true content: application/json: schema: $ref: '#/paths/~1project~1%7BprojectId%7D~1owners/post/requestBody/content/application~1json/schema' responses: '201': description: Successfully added new participant to the project content: application/json: schema: $ref: '#/paths/~1users/get/responses/200/content/application~1json/schema' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' get: summary: View the project participants list parameters: - in: path name: projectId required: true schema: type: string description: Project ID - $ref: '#/paths/~1projects/get/parameters/1' - $ref: '#/paths/~1projects/get/parameters/2' operationId: rest.project.participants.index security: - jwt: [] responses: '200': description: Successfully fetch a list of the project participants content: application/json: schema: $ref: '#/paths/~1users/get/responses/200/content/application~1json/schema' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' put: summary: User accept or reject invitation to become the project participant parameters: - in: path name: projectId required: true schema: type: string description: Project ID operationId: rest.project.participants.put security: - jwt: [] responses: '200': description: Successfully status of the project updated content: application/json: schema: $ref: '#/paths/~1project~1%7BprojectId%7D~1owners/put/responses/200/content/application~1json/schema' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' '/project/{projectId}/participants/{userId}': delete: summary: 'Leave the project, remove a user from the project participants' parameters: - in: path name: projectId required: true schema: type: string description: Project ID - in: path name: userId required: true schema: type: string description: User ID operationId: rest.project.participants.delete security: - jwt: [] responses: '204': $ref: '#/paths/~1comment~1%7BcommentId%7D/delete/responses/204' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' '/project/{projectId}/owners': post: summary: Invite a user to the project as owner parameters: - in: path name: projectId required: true schema: type: string description: Project ID operationId: rest.project.owners.post security: - jwt: [] requestBody: required: true content: application/json: schema: type: object required: - profile_ids properties: profile_ids: type: array items: type: string responses: '201': description: Successfully added new participant to the project content: application/json: schema: $ref: '#/paths/~1users/get/responses/200/content/application~1json/schema' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' get: summary: View the project owners list parameters: - in: path name: projectId required: true schema: type: string description: Project ID - $ref: '#/paths/~1projects/get/parameters/1' - $ref: '#/paths/~1projects/get/parameters/2' operationId: rest.project.owners.index security: - jwt: [] responses: '200': description: Successfully fetch a list of the project owners content: application/json: schema: $ref: '#/paths/~1users/get/responses/200/content/application~1json/schema' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' put: summary: User accept or reject invitation to become the project owner parameters: - in: path name: projectId required: true schema: type: string description: Project ID operationId: rest.project.owners.put security: - jwt: [] responses: '200': description: Successfully status of the project updated content: application/json: schema: type: object required: - invitation_status properties: invitation_status: type: string enum: - Pending - Approved - Rejected '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' '/project/{projectId}/owners/{userId}': delete: summary: Remove the user from the project owners parameters: - in: path name: projectId required: true schema: type: string description: Project ID - in: path name: userId required: true schema: type: string description: User ID operationId: rest.project.owners.delete security: - jwt: [] responses: '204': $ref: '#/paths/~1comment~1%7BcommentId%7D/delete/responses/204' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' '/project/{projectId}/comments': post: summary: Add comment to the project parameters: - in: path name: projectId required: true schema: type: string description: Project ID operationId: rest.project.comments.post security: - jwt: [] requestBody: required: true content: application/json: schema: $ref: '#/paths/~1comment~1%7BcommentId%7D~1reply/post/requestBody/content/application~1json/schema' responses: '201': description: Successfully added new comment to the project content: application/json: schema: $ref: '#/paths/~1comment~1%7BcommentId%7D~1reply/post/responses/201/content/application~1json/schema' '400': description: Bad Request. '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' get: summary: View the project comments list parameters: - in: path name: projectId required: true schema: type: string description: Project ID operationId: rest.project.comments.index security: - jwt: [] responses: '200': description: Successfully fetch a list of the project comments content: application/json: schema: type: array items: $ref: '#/paths/~1comment~1%7BcommentId%7D~1reply/post/responses/201/content/application~1json/schema' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' '/project/{projectId}/reviews': post: summary: Add review to the project parameters: - in: path name: projectId required: true schema: type: string description: Project ID operationId: rest.project.reviews.post security: - jwt: [] requestBody: required: true content: application/json: schema: type: object required: - text - rate properties: text: type: string minLength: 1 maxLength: 3000 rate: type: number format: float minimum: 0 maximum: 5 example: 4.2 responses: '201': description: Successfully added new review to the project content: application/json: schema: type: object required: - entity_id - creation_date - creator - project - text - rate - likes - reaction properties: entity_id: type: string creation_date: $ref: '#/paths/~1folders/put/responses/201/content/application~1json/schema/properties/created' creator: $ref: '#/paths/~1users/get/responses/200/content/application~1json/schema/items' project: $ref: '#/paths/~1projects/get/responses/200/content/application~1json/schema/items' text: type: string rate: $ref: '#/paths/~1project~1%7BprojectId%7D~1reviews/post/requestBody/content/application~1json/schema/properties/rate' likes: type: number reply: type: array items: $ref: '#/paths/~1comment~1%7BcommentId%7D~1reply/post/responses/201/content/application~1json/schema' reaction: $ref: '#/paths/~1projects/post/responses/201/content/application~1json/schema/properties/reaction' '400': description: Bad Request. '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' get: summary: Fetch all reviews of the project parameters: - in: path name: projectId required: true schema: type: string description: Project ID operationId: rest.project.reviews.get security: - jwt: [] responses: '200': description: Successfully fetched all reviews of the project content: application/json: schema: type: array items: $ref: '#/paths/~1project~1%7BprojectId%7D~1reviews/post/responses/201/content/application~1json/schema' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' '/project/{projectId}/likes': post: summary: Add like to the project parameters: - in: path name: projectId required: true schema: type: string description: Project ID operationId: rest.project.likes.post security: - jwt: [] responses: '201': $ref: '#/paths/~1review~1%7BreviewId%7D~1likes/post/responses/201' '400': description: Bad Request. '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' delete: summary: Delete the like of the project parameters: - in: path name: projectId required: true schema: type: string description: Project ID operationId: rest.project.likes.delete security: - jwt: [] responses: '204': $ref: '#/paths/~1review~1%7BreviewId%7D~1likes/post/responses/201' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' '/project/{projectId}/publish': post: summary: Publish project request parameters: - in: path name: projectId required: true schema: type: string description: Project ID operationId: rest.project.publish.post security: - jwt: [] responses: '201': description: Successfully the project published content: application/json: schema: $ref: '#/paths/~1projects/post/responses/201/content/application~1json/schema' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' '/comment/{commentId}/reply': post: summary: Add comment reply to comment parameters: - in: path name: commentId required: true schema: type: string description: Comment ID operationId: rest.comments.post security: - jwt: [] requestBody: required: true content: application/json: schema: type: object required: - text properties: text: type: string minLength: 1 maxLength: 2000 responses: '201': description: Successfully added new reply to the comment content: application/json: schema: type: object required: - entity_id - creation_date - creator - text - likes - reaction properties: entity_id: type: string creation_date: $ref: '#/paths/~1folders/put/responses/201/content/application~1json/schema/properties/created' creator: $ref: '#/paths/~1users/get/responses/200/content/application~1json/schema/items' text: type: string likes: type: number reply: type: array items: $ref: '#/paths/~1comment~1%7BcommentId%7D~1reply/post/responses/201/content/application~1json/schema' reaction: $ref: '#/paths/~1projects/post/responses/201/content/application~1json/schema/properties/reaction' '400': description: Bad Request. '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' '/comment/{commentId}': delete: summary: Delete the comment parameters: - in: path name: commentId required: true schema: type: string description: Comment ID operationId: rest.comments.delete security: - jwt: [] responses: '204': description: The resource was deleted successfully. '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' '/comment/{commentId}/likes': post: summary: Add like to the comment parameters: - in: path name: commentId required: true schema: type: string description: Comment ID operationId: rest.comment.likes.post security: - jwt: [] responses: '201': $ref: '#/paths/~1review~1%7BreviewId%7D~1likes/post/responses/201' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' delete: summary: Delete the like of the comment parameters: - in: path name: commentId required: true schema: type: string description: Comment ID operationId: rest.comment.likes.delete security: - jwt: [] responses: '204': $ref: '#/paths/~1review~1%7BreviewId%7D~1likes/post/responses/201' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' '/project/{projectId}/review/{reviewId}': put: summary: Edit the review of the project parameters: - in: path name: projectId required: true schema: type: string description: Project ID - in: path name: reviewId required: true schema: type: string description: Review ID operationId: rest.project.review.put security: - jwt: [] requestBody: required: true content: application/json: schema: $ref: '#/paths/~1project~1%7BprojectId%7D~1reviews/post/requestBody/content/application~1json/schema' responses: '201': description: Successfully edited the review of the project content: application/json: schema: $ref: '#/paths/~1project~1%7BprojectId%7D~1reviews/post/responses/201/content/application~1json/schema' '400': description: Bad Request. '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' delete: summary: Delete the review of the project parameters: - in: path name: projectId required: true schema: type: string description: Project ID - in: path name: reviewId required: true schema: type: string description: Review ID operationId: rest.project.review.delete security: - jwt: [] responses: '204': $ref: '#/paths/~1comment~1%7BcommentId%7D/delete/responses/204' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' '/review/{reviewId}/likes': post: summary: Add like to the review parameters: - in: path name: reviewId required: true schema: type: string description: Review ID operationId: rest.review.likes.post security: - jwt: [] responses: '201': description: The request was success content: application/json: schema: type: object properties: success: type: boolean example: true '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' delete: summary: Delete the like of the review parameters: - in: path name: reviewId required: true schema: type: string description: Review ID operationId: rest.review.likes.delete security: - jwt: [] responses: '204': $ref: '#/paths/~1review~1%7BreviewId%7D~1likes/post/responses/201' '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' '/review/{reviewId}/comments': post: summary: Add comment to the review parameters: - in: path name: reviewId required: true schema: type: string description: Review ID operationId: rest.review.comments.post security: - jwt: [] requestBody: required: true content: application/json: schema: $ref: '#/paths/~1comment~1%7BcommentId%7D~1reply/post/requestBody/content/application~1json/schema' responses: '201': description: Successfully added new comment to the review content: application/json: schema: $ref: '#/paths/~1comment~1%7BcommentId%7D~1reply/post/responses/201/content/application~1json/schema' '400': description: Bad Request. '404': $ref: '#/paths/~1users/get/responses/404' default: $ref: '#/paths/~1users/get/responses/default' '/profile/{profileId}': put: summary: Edit user profile parameters: - in: path name: profileId required: true schema: type: string description: Profile ID operationId: rest.profiles.put security: - jwt: [] requestBody: required: true content: application/json: schema: type: object required: - full_name - email - locations - categories properties: full_name: type: string example: Patricia Santos email: type: string example: example@gmail.com image_url: $ref: '#/paths/~1projects/post/requestBody/content/application~1json/schema/properties/cover' locations: type: array items: $ref: '#/paths/~1projects/post/requestBody/content/application~1json/schema/properties/location' occupation: type: string example: Interior designer organization: type: string categories: type: array items: type: string example: Dogs in architecture csi_codes: type: array items: type: string example: 01100 Summary website: type: string example: www.example.com social: type: object properties: facebook: type: string example: 'https://www.facebook.com/patricia' linkedin: type: string example: 'https://www.linkedin.com/in/patricia_santos/' twitter: type: string example: 'https://www.twitter.com/' instagram: type: string example: 'https://www.instagram.com/' conference: type: string example: 'https://uber.coconferencenfluence.com' about: type: string example: Pa