> ## Documentation Index
> Fetch the complete documentation index at: https://developers.everhour.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Client

> Create a new client. Names are not deduplicated — posting the same name creates another client.



## OpenAPI

````yaml /openapi.json post /clients
openapi: 3.1.1
info:
  title: Everhour API
  version: 1.0.0
  license:
    name: Proprietary
    identifier: LicenseRef-Proprietary
servers:
  - url: https://api.everhour.com
security:
  - ApiKeyAuth: []
tags:
  - name: Clients
  - name: Custom Fields
  - name: Expenses
  - name: Invoices
  - name: Projects
  - name: Reports
  - name: Schedule
  - name: Tasks
  - name: Time Off
  - name: Time Records
  - name: Timecards
  - name: Timers
  - name: Timesheets
  - name: Users
  - name: Webhooks
paths:
  /clients:
    post:
      tags:
        - Clients
      summary: Create Client
      description: >-
        Create a new client. Names are not deduplicated — posting the same name
        creates another client.
      operationId: createClient
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientRequestCreateRequest'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Client'
        '401':
          description: Unauthorized
components:
  schemas:
    ClientRequestCreateRequest:
      type: object
      properties:
        name:
          type: string
          example: Client Name
        projects:
          type: array
          items:
            type: string
          description: Project encoded IDs to assign to the client.
        lineItemMask:
          type: string
          description: Template for generated invoice line-item names.
        defaultTax:
          type: object
          description: Default tax for the client's invoices.
          properties:
            id:
              type: integer
              description: Tax ID from a connected accounting integration.
            rate:
              type: number
              description: Tax rate as a percentage.
        defaultDiscount:
          type: number
          description: Default discount rate as a percentage (0-100).
        paymentDueDays:
          type: integer
          description: Default invoice payment term in days (0-365).
        reference:
          type: string
        invoicePublicNotes:
          type: string
        businessDetails:
          type: string
        billingDetails:
          $ref: '#/components/schemas/ClientBillingDetails'
        excludedLabels:
          type: array
          items:
            type: string
          description: Labels excluded from invoicing (max 8).
        email:
          type: array
          items:
            type: string
          description: Invoice recipient email addresses (max 10).
      required:
        - name
    Client:
      type: object
      properties:
        id:
          type: number
          example: 4567
        name:
          type: string
          example: Client Name
        projects:
          type: array
          description: List of projects ID
          items:
            type: string
          example:
            - ev:1234567890
        businessDetails:
          type:
            - string
            - 'null'
        budget:
          $ref: '#/components/schemas/ClientBudget'
      required:
        - id
        - name
        - projects
    ClientBillingDetails:
      type: object
      description: Client billing details (all fields optional).
      properties:
        companyName:
          type: string
          nullable: true
        vatNumber:
          type: string
          nullable: true
        addressLine1:
          type: string
          nullable: true
        addressLine2:
          type: string
          nullable: true
        city:
          type: string
          nullable: true
        state:
          type: string
          nullable: true
        postcode:
          type: string
          nullable: true
        country:
          type: string
          nullable: true
          description: ISO 3166-1 alpha-2 country code.
        contactName:
          type: string
          nullable: true
        contactPhone:
          type: string
          nullable: true
        contactEmail:
          type: string
          nullable: true
        peppolEndpointId:
          type: string
          nullable: true
        peppolEndpointScheme:
          type: string
          nullable: true
        peppolMeansCode:
          type: string
          nullable: true
        bankAccountNumber:
          type: string
          nullable: true
        bankAccountRoutingNumber:
          type: string
          nullable: true
        bankAccountHolderName:
          type: string
          nullable: true
    ClientBudget:
      type: object
      properties:
        type:
          type: string
          description: Budget Type
          enum:
            - money
            - time
            - costs
          example: money
        budget:
          type: number
          description: Budget value in cents (for money) or seconds (for time)
          example: 100000
        period:
          type: string
          description: Budget periodicity (overall, monthly, weekly, daily)
          enum:
            - general
            - monthly
            - weekly
            - daily
            - quarterly
            - yearly
          example: general
        appliedFrom:
          type:
            - string
            - 'null'
          description: Start budget from (available only for non-recurrent budgets)
        disallowOverbudget:
          type: boolean
        excludeUnbillableTime:
          type: boolean
        excludeExpenses:
          type: boolean
        threshold:
          type: number
          description: >-
            Email admins when threshold reached. Threshold is percentage 1 -
            100.
        progress:
          type: number
          description: Current budget usage in cents (for money) or seconds (for time)
          readOnly: true
          example: 0
      required:
        - type
        - budget
        - period
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-Api-Key

````