---
title: "Create a service"
method: POST
path: "/services"
tags: ["services"]
---

# Create a service

`POST /services`

Requires the privilege [`SERVICES_WRITE`](https://www.gremlin.com/docs/user-management/access-control/#privileges)

## Query parameters

- `teamId` string, required

## Request body

- UserDefinedServiceRequest
  - `name` string, required
  - `description` string
  - `targetingStrategy` TargetingStrategy
    - `type` string, required
  - `applicationSelector` ApplicationSelector
    - `applicationName` string, required
  - `statusCheckIds` string[]
  - `scheduleSettings` ScheduleSettings
    - `enabled` boolean
    - `scheduleType` 'OnlyOnce' | 'Random'
    - `triggerType` 'Passed' | 'RunOnce' | 'Always'
    - `triggers` Trigger[]
      - `dayOfWeek` 'M' | 'T' | 'W' | 'Th' | 'F' | 'S' | 'Su', required
      - `scheduleWindows` ScheduleWindow[], required
        - `start` string, required — Time in HH:mm format (24-hour)
        - `end` string, required — Time in HH:mm format (24-hour)
  - `tags` object
  - `multiSelectTags` object
  - `serviceOwner` ServiceOwner
    - `identifier` string
  - `startBaselineRequest` StartBaselineRequest — Represents a request to run all tests
    - `tests` string[]
  - `awsTargetsArn` string[]
  - `gcpTargetResourceIds` string[]
  - `azureTargetResourceIds` string[]
  - `intelligentHealthCheckTargetIds` string[]
  - `enabledGremlinAwsStatusCheck` boolean
  - `originatingScenarioId` string

## Response `default`

default response

## Other responses

- `401` — Authorization header missing or malformed. Please provide proper credentials in the authorization header.
- `403` — User requires privilege for target team: SERVICES_WRITE

---

[API](https://skmtc.net/gremlin/apis/gremlin-api.md) · [All operations](https://skmtc.net/gremlin/apis/gremlin-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/gremlin/gremlin-api/revisions/36ee938323f0/schema)
