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

# Create device

> Create a new device monitor (Expert Plan required)



## OpenAPI

````yaml openapi.yaml post /v2/devices
openapi: 3.0.3
info:
  title: PulseGuard API
  description: >
    Comprehensive monitoring and management API for domains, devices, services,
    and network utilities.


    ## Authentication


    PulseGuard API uses different authentication methods depending on the
    endpoint:


    - **Bearer Token**: Most API endpoints require a valid API token passed in
    the Authorization header

    - **Agent Authentication**: Device agent endpoints use device-specific
    tokens

    - **Public Access**: Some endpoints like domain checking and downloads are
    publicly accessible


    ## Rate Limiting


    API requests are rate-limited per user and endpoint. Rate limits vary by
    subscription plan.


    ## Plan Requirements


    Certain API endpoints require specific subscription plans:

    - **Expert Plan**: Full API v1 access with advanced features

    - **Reports Plan**: Access to comprehensive reporting data

    - **Free/Pro Plans**: Basic monitoring with limited API access


    ## Base URL


    **Production**: `https://api.ipulse.one`


    ## Support


    For API support, visit our [documentation](https://docs.ipulse.one) or
    contact us at info@ipulse.one.
  version: 1.0.0
  contact:
    name: PulseGuard Support
    url: https://docs.ipulse.one
    email: info@ipulse.one
  license:
    name: Proprietary
    url: https://ipulse.one/terms
servers:
  - url: https://api.ipulse.one
    description: Production server
security:
  - bearerAuth: []
  - agentAuth: []
tags:
  - name: Authentication
    description: User authentication and account management
  - name: Domains
    description: Domain monitoring and management (Expert Plan required)
  - name: Devices
    description: Device monitoring and management (Expert Plan required)
  - name: Service Monitors
    description: Service monitoring endpoints (Expert Plan required)
  - name: Toolbox
    description: Network utility tools (Expert Plan required)
  - name: Statistics
    description: Analytics and statistics (Expert Plan required)
  - name: AI & Anomalies
    description: AI-powered anomaly detection and management
  - name: Reports
    description: Comprehensive reporting (Reports Plan required)
  - name: Public
    description: Publicly accessible endpoints
paths:
  /v2/devices:
    post:
      tags:
        - Devices
      summary: Create device
      description: Create a new device monitor (Expert Plan required)
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: Device name
                  example: Web Server 01
                hostname:
                  type: string
                  description: Device hostname or IP address
                  example: server01.example.com
                description:
                  type: string
                  description: Device description
                  example: Production web server
              required:
                - name
                - hostname
      responses:
        '201':
          description: Device created successfully
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/Success'
                  - type: object
                    properties:
                      data:
                        $ref: '#/components/schemas/Device'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '422':
          $ref: '#/components/responses/ValidationError'
components:
  schemas:
    Success:
      type: object
      properties:
        success:
          type: boolean
          example: true
        message:
          type: string
          description: Success message
        data:
          oneOf:
            - type: object
              description: Response data as object
            - type: array
              description: Response data as array
      required:
        - success
        - message
    Device:
      type: object
      properties:
        uuid:
          type: string
          format: uuid
          description: Unique identifier for the device
        name:
          type: string
          description: Device name
        hostname:
          type: string
          description: Device hostname
        os:
          type: string
          description: Operating system
        status:
          type: string
          enum:
            - online
            - offline
            - maintenance
            - unknown
          description: Current device status
        last_seen:
          type: string
          format: date-time
          description: Last time device checked in
        metrics:
          type: object
          properties:
            cpu_usage:
              type: number
              format: float
              description: CPU usage percentage
            memory_usage:
              type: number
              format: float
              description: Memory usage percentage
            disk_usage:
              type: number
              format: float
              description: Disk usage percentage
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
      required:
        - uuid
        - name
        - hostname
        - status
    Error:
      type: object
      properties:
        success:
          type: boolean
          example: false
        message:
          type: string
          description: Error message
        errors:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: Validation errors (if applicable)
      required:
        - success
        - message
  responses:
    Unauthorized:
      description: Unauthorized - Invalid or missing API token
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            success: false
            message: Unauthenticated.
    Forbidden:
      description: Forbidden - Insufficient permissions or plan requirements not met
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            success: false
            message: This feature requires an Expert Plan subscription.
    ValidationError:
      description: Validation error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            success: false
            message: The given data was invalid.
            errors:
              name:
                - The name field is required.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: token
      description: API token generated from your PulseGuard dashboard
    agentAuth:
      type: http
      scheme: bearer
      bearerFormat: token
      description: Device agent authentication token

````