openapi: 3.1.0 info: title: Fermyon Cloud accounts API version: '1.0' description: OpenAPI 3.1 specification for the Fermyon Cloud REST API, derived from the public swagger.json published in the fermyon/cloud-openapi repository on GitHub. servers: - url: https://cloud.fermyon.com description: Fermyon Cloud production API security: - Bearer: [] tags: - name: accounts paths: /api/accounts/{id}: get: tags: - accounts parameters: - name: id in: path required: true schema: type: string - name: Api-Version in: header description: The requested API version schema: type: string default: '1.0' responses: '200': description: Success content: text/plain: schema: $ref: '#/components/schemas/AccountDetails' application/json: schema: $ref: '#/components/schemas/AccountDetails' text/json: schema: $ref: '#/components/schemas/AccountDetails' patch: tags: - accounts parameters: - name: id in: path required: true schema: type: string - name: Api-Version in: header description: The requested API version schema: type: string default: '1.0' requestBody: content: application/json-patch+json: schema: $ref: '#/components/schemas/PatchAccountDetailsCommand' application/json: schema: $ref: '#/components/schemas/PatchAccountDetailsCommand' text/json: schema: $ref: '#/components/schemas/PatchAccountDetailsCommand' application/*+json: schema: $ref: '#/components/schemas/PatchAccountDetailsCommand' required: true responses: '200': description: Success delete: tags: - accounts parameters: - name: id in: path required: true schema: type: string format: uuid - name: Api-Version in: header description: The requested API version schema: type: string default: '1.0' responses: '200': description: Success components: schemas: PatchAccountDetailsCommand: type: object properties: isMarketingEmailOn: $ref: '#/components/schemas/BooleanField' additionalProperties: false BooleanField: type: string properties: value: type: boolean additionalProperties: false AccountDetails: type: object properties: plan: $ref: '#/components/schemas/AccountPlanRecord' isMarketingEmailOn: type: boolean createdAt: type: string format: date-time nullable: true additionalProperties: false AccountPlanRecord: type: object properties: accountType: $ref: '#/components/schemas/AccountPlanType' cancelAt: type: string format: date-time nullable: true cycleStartDate: type: string format: date-time nullable: true cycleEndDate: type: string format: date-time nullable: true lastModified: type: string format: date-time nullable: true additionalProperties: false AccountPlanType: enum: - Free - Growth - Enterprise type: string securitySchemes: Bearer: type: apiKey description: 'JWT Authorization header using the Bearer scheme. Example: "Authorization: Bearer {token}"' name: Authorization in: header