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

# Create a location

> Creates a new location for the authenticated company. `name`, `coordinates` and `radius` are required.



## OpenAPI

````yaml POST /core/v3/locations
openapi: 3.0.0
info:
  description: ''
  version: 3.0.0
  title: Sesame Public API
servers:
  - url: https://api-{region}.sesametime.com
    variables:
      region:
        default: eu1
security: []
tags: []
paths:
  /core/v3/locations:
    post:
      tags:
        - Locations
      summary: Create a location
      description: >-
        Creates a new location for the authenticated company. `name`,
        `coordinates` and `radius` are required.
      operationId: CreateLocation
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - name
                - coordinates
                - radius
              properties:
                name:
                  type: string
                  maxLength: 255
                  example: Valls main entrance
                address:
                  type: string
                  maxLength: 255
                  nullable: true
                  example: Carrer Major 1, Valls
                coordinates:
                  type: object
                  required:
                    - latitude
                    - longitude
                  properties:
                    latitude:
                      type: number
                      format: float
                      example: 41.2861
                    longitude:
                      type: number
                      format: float
                      example: 1.2497
                radius:
                  type: integer
                  minimum: 10
                  maximum: 1000
                  description: Geofence radius in meters
                  example: 150
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    description: A geofence location of the authenticated company.
                    properties:
                      id:
                        type: string
                        format: uuid
                      companyId:
                        type: string
                        format: uuid
                      name:
                        type: string
                        example: Valls main entrance
                      address:
                        type: string
                        nullable: true
                        example: Carrer Major 1, Valls
                      coordinates:
                        type: object
                        nullable: true
                        description: >-
                          Always present for locations created through this API.
                          Locations created from the panel may have no
                          coordinates yet.
                        properties:
                          latitude:
                            type: number
                            format: float
                            example: 41.2861
                          longitude:
                            type: number
                            format: float
                            example: 1.2497
                      radius:
                        type: integer
                        nullable: true
                        description: >-
                          Geofence radius in meters. Writes through this API
                          accept 10 to 1000; locations created from the panel
                          may carry other values or null.
                        example: 150
                      createdAt:
                        type: string
                        format: Y-m-dTH:i:sP
                        example: '2020-01-01T10:00:00+01:00'
                      updatedAt:
                        type: string
                        format: Y-m-dTH:i:sP
                        example: '2020-01-01T10:00:00+01:00'
                  meta:
                    type: object
                    properties:
                      currentPage:
                        type: integer
                        example: 1
                      lastPage:
                        type: integer
                        example: 1
                      total:
                        type: integer
                        example: 1
                      perPage:
                        type: integer
                        example: 1
        '401':
          description: Unauthorized - Invalid or missing API Key
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Error message indicating authentication failure
                    example: Invalid or missing API Key
                  code:
                    type: string
                    description: Error code for programmatic handling
                    example: UNAUTHORIZED
              example:
                message: Invalid or missing API Key
                code: UNAUTHORIZED
        '422':
          description: >-
            Validation error: missing `name`, `coordinates` or `radius`;
            `radius` out of the 10-1000 range; invalid or incomplete
            `coordinates`; `name` or `address` over 255 characters
        '429':
          description: Too Many Requests - Rate limit exceeded
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Error message indicating rate limit exceeded
                    example: Rate limit exceeded. Please try again later.
                  code:
                    type: string
                    description: Error code for programmatic handling
                    example: RATE_LIMIT_EXCEEDED
                  retryAfter:
                    type: integer
                    description: Number of seconds to wait before retrying
                    example: 60
              example:
                message: Rate limit exceeded. Please try again later.
                code: RATE_LIMIT_EXCEEDED
                retryAfter: 60
      security:
        - Bearer: []
components:
  securitySchemes:
    Bearer:
      type: http
      scheme: bearer
      bearerFormat: JWT

````