> ## Documentation Index
> Fetch the complete documentation index at: https://api-docs.iklim.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Account

> Creates a new account with the provided details.



## OpenAPI

````yaml /open-api/en/accounts-version-1.json post /v1/accounts/create
openapi: 3.0.1
info:
  title: OpenAPI definition
  version: v0
servers:
  - url: https://api.iklim.co
    description: Production server
  - url: https://api-test.iklim.co
    description: Test server
  - url: http://localhost:8080
    description: Local development environment with api gateway
security: []
tags:
  - name: User Accounts Service
    description: Manages Account Related Services
paths:
  /v1/accounts/create:
    post:
      tags:
        - User Accounts Service
      summary: Create Account
      description: Creates a new account with the provided details.
      operationId: create
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateAccountRequest'
        required: true
      responses:
        '200':
          description: Account Successfully Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountResponse'
        '400':
          description: Required Headers Missing or Payload Invalid for Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorResponse'
              examples:
                Bad Request Example:
                  summary: Example response
                  description: Bad Request Example
                  value:
                    timestamp: '2025-04-14T16:26:54.203118461'
                    status: 400
                    error: Bad Request
                    message: Missing X-Idempotency-Key header
                    path: /endpoint/uri/here
        '401':
          description: Unauthorized Request or Invalid Signature
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorResponse'
              examples:
                Unauthorized Example 1:
                  summary: Example response 1
                  description: Unauthorized Example 1
                  value:
                    timestamp: '2025-04-14T16:57:50.083970026'
                    status: 401
                    error: Unauthorized
                    message: Bad Credentials
                    path: /endpoint/uri/here
                Unauthorized Example 2:
                  summary: Example response 2
                  description: Unauthorized Example 2
                  value:
                    timestamp: '2025-04-14T16:57:50.083970026'
                    status: 401
                    error: Unauthorized
                    message: Invalid request signature
                    path: /auth/login
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/StandardErrorResponse'
        '409':
          description: Redundant Request Made
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorResponse'
              examples:
                Conflict Example 1:
                  summary: Example response 1
                  description: Conflict Example 1
                  value:
                    timestamp: '2025-04-14T16:57:21.168927321'
                    status: 409
                    error: Conflict
                    message: Replay attack detected (nonce reused)
                    path: /endpoint/uri/here
                Conflict Example 2:
                  summary: Example response 2
                  description: Conflict Example 2
                  value:
                    timestamp: '2025-04-14T16:56:28.671809875'
                    status: 409
                    error: Conflict
                    message: Duplicate request detected (X-Idempotency-Key)
                    path: /endpoint/uri/here
        '500':
          description: Internal Server Error During Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorResponse'
              examples:
                Internal Server Error Example:
                  summary: Example response
                  description: Internal Server Error Example
                  value:
                    timestamp: '2025-04-14T16:58:10.414972912'
                    status: 500
                    error: Internal Server Error
                    message: An Error Occurred During Login
                    path: /endpoint/uri/here
components:
  schemas:
    CreateAccountRequest:
      required:
        - subscriptionPlan
        - type
        - userId
      type: object
      properties:
        userId:
          type: string
          description: User Identifier for Account Creation
          format: uuid
          example: 296ff917-9b4b-4dc1-987d-2c17bdac7133
        type:
          type: string
          description: Account Type to be Created
          example: ORGANIZATION/INDIVIDUAL
          enum:
            - INDIVIDUAL
            - ORGANIZATION
        mobilePhoneNumber:
          type: string
          description: Mobile Phone Number of Created Account
          example: '905321112233'
        location:
          type: string
          description: Address of Created Account
          example: >-
            Cyberpark, Cyberplaza, A Blok, Kat 2, 06800, Bilkent, Ankara,
            Türkiye
        company:
          type: string
          description: swagger.swagger.schema.accounts.create-request.company
          example: TARLAIO İKLİM VE TARIM TEKNOLOJİLERİ A.Ş.
        industry:
          type: string
          description: Industry of Created Account
          example: Yazılım Geliştirme, SaaS
        profilePictureUrl:
          type: string
          description: Profile Picture URL of Created Account
          example: https://*******.png
        subscriptionPlan:
          type: string
          description: Subscription Plan of Created Account
          example: >-
            NONE/TRIAL/BASIC_MONTHLY/BASIC_YEARLY/PREMIUM_MONTHLY/PREMIUM_YEARLY/CUSTOM
          enum:
            - NONE
            - TRIAL
            - BASIC_MONTHLY
            - BASIC_YEARLY
            - PREMIUM_MONTHLY
            - PREMIUM_YEARLY
            - CUSTOM
    AccountResponse:
      type: object
      properties:
        id:
          type: string
          description: Account Identifier
          format: uuid
        userId:
          type: string
          description: User Identifier
          format: uuid
        type:
          type: string
          description: Account Type
          enum:
            - INDIVIDUAL
            - ORGANIZATION
        createdAt:
          type: string
          description: Account Creation Date
          format: date-time
        updatedAt:
          type: string
          description: Account Update Date
          format: date-time
        mobilePhoneNumber:
          type: string
          description: Account Mobile Phone Number
        location:
          type: string
          description: Account Address
        company:
          type: string
          description: Account Company Name
        industry:
          type: string
          description: Account Industry
        profilePictureUrl:
          type: string
          description: Account Profile Picture URL
        subscriptionPlan:
          type: string
          description: Account Subscription Plan
          enum:
            - NONE
            - TRIAL
            - BASIC_MONTHLY
            - BASIC_YEARLY
            - PREMIUM_MONTHLY
            - PREMIUM_YEARLY
            - CUSTOM
        emailVerified:
          type: boolean
          description: Is E-mail Verified?
        mobilePhoneNumberVerified:
          type: boolean
          description: Is Mobile Phone Number Verified?
    StandardErrorResponse:
      required:
        - error
        - message
        - path
        - status
        - timestamp
      type: object
      properties:
        timestamp:
          type: string
          description: Error Time Stamp
          format: date-time
        status:
          type: integer
          description: Error Status Code
          format: int32
        error:
          type: string
          description: Error Name
          example: Error Name
        message:
          type: string
          description: Error Description
          example: Error Message
        path:
          type: string
          description: Erroring Endpoint URI
          example: /endpoint/uri/here

````