openapi: 3.2.0 info: version: 2.0.0 title: cove.tool REST API v2 User API termsOfService: https://www.cove.tools/terms-of-use x-logo: url: ./covetool_logo.png altText: cove.tool logo description: "# Introduction\nThe cove.tool API is a set of HTTP endpoints that help your app integrate with cove.tool. The cove.tool API is developed around the RESTful architecture\n\nRecently, we released the cove.tool API v2. The cove.tool API v2 includes a modern foundation, new and advanced features to how cove.tool can integrate seamlessly into your app.\n\n# Getting Started\nIn order to start making calls to the API, each request will have to be authenticated. This is done by providing an authentication token on every request. It checks whether the user is authorized and has permission to perform the following actions. See more in Authentication section.\n1. **Cove.tool account** - Make sure to have access to a valid (trial/licensed) cove.tool account.\n2. **Projects created with cove.tool** - Once you login to your cove.tool account, make sure to create project(s) you wish to start making API requests with! As these are the projects that the API relies on to obtain, update and retrieve information.\n\n# Authentication\nBy providing an authentication token on every request, it checks whether the user is authorized and has permission to update and retrieve data.\n ## Generating an API Token\n | URL | https://app.covetool.com/api/get-token |\n |-----|----------------------------------------|\n\n\n# Testing\nIn order to understand how the cove.tool API can work for you, the easiest way is to start making requests! We recommend using standard API testing tools such as HTTPie or Postman to start interacting with the API over HTTP.\n\n# Error Codes\n| HTTP Status Code | Category |\n|:----------------:|:---------------------:|\n| 200 | OK |\n| 201 | Updated |\n| 202 | Accepted |\n| 400 | Bad Request |\n| 401 | Unauthorized Request |\n| 404 | Resource Not Found |\n| 5xx | Internal Server Error |\n\n_Happy Developing!_\n" servers: - url: https://app.covetool.com/api/v2 tags: - name: User paths: /auth/signup: post: tags: - User summary: Enables the creation of a cove.tool user account description: cove.tool accounts can now be created via an API call within your business/organization. This adds a potential new user account to your cove.tool license that are able to access cove.tool products and features. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UserSignupRequests' description: User information of a cove.tool account to be created responses: '201': description: Successfully Created content: application/json: schema: $ref: '#/components/schemas/UserSignupOKResponses' '400': $ref: '#/components/responses/BadRequest' components: schemas: GeneralEndpointResponses: type: object required: - data - msg - errors properties: data: type: object msg: type: string errors: type: array items: type: string UserSignupOKResponses: type: object allOf: - $ref: '#/components/schemas/GeneralEndpointResponses' - type: object properties: data: $ref: '#/components/schemas/UserInformationResponseData' example: data: is_owner: false is_admin: false created_at: '2022-01-28T12:00:47.649935-05:00' email: user@company.com first_name: John last_name: Smith business: name: My Company Name telephone: 123-456-7890 user_limit: 10 domain: mycompanywebsite.com size: null msg: A new user-profile was created. Activate via email. error: [] UserInformationResponseData: type: object required: - is_owner - is_admin - created_at - email - first_name - last_name - business properties: is_owner: type: boolean is_admin: type: boolean created_at: type: string format: date-time email: type: string format: email first_name: type: string last_name: type: string business: type: object properties: name: type: string telephone: type: number user_limit: type: number domain: type: string format: url size: type: number UserSignupRequests: type: object required: - email - password - first_name - last_name properties: email: type: string format: email example: hello@covetool.com password: type: string format: password example: mysupersecurepassword first_name: type: string example: John last_name: type: string example: Smith responses: BadRequest: description: Invalid request. Check contents of your response body. securitySchemes: apiKeyAuth: type: apiKey in: header name: Authorization