Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/Shashank-H/gaiter-gaurd/llms.txt

Use this file to discover all available pages before exploring further.

All service endpoints require authentication via Bearer token.

List services

Retrieve all API services configured for the authenticated user.

Headers

Authorization
string
required
Bearer token for authentication. Format: Bearer <jwt>

Response

Returns an array of service objects.
services
object[]

Status codes

  • 200 - Services retrieved successfully
  • 401 - Unauthorized (missing or invalid token)
  • 500 - Internal server error
curl --request GET \
  --url https://api.gaiterguard.com/services \
  --header 'Authorization: Bearer <jwt>'
[
  {
    "id": 1,
    "userId": 1,
    "name": "GitHub API",
    "baseUrl": "https://api.github.com",
    "authType": "bearer",
    "credentials": {
      "token": "***"
    },
    "createdAt": "2026-03-03T22:49:00.000Z",
    "updatedAt": "2026-03-03T22:49:00.000Z"
  }
]

Create service

Create a new service with encrypted credentials.

Headers

Authorization
string
required
Bearer token for authentication. Format: Bearer <jwt>

Request body

name
string
required
Service name (1-255 characters).
baseUrl
string
required
Base URL for the service API. Must be a valid URL (max 512 characters).
authType
string
required
Authentication type. Must be one of: api_key, bearer, basic, oauth2.
credentials
object
required
Key-value pairs of credential names and values. At least one credential is required. Values are encrypted before storage.

Response

id
number
Unique service identifier.
userId
number
Owner user ID.
name
string
Service name.
baseUrl
string
Base URL for the service API.
authType
string
Authentication type.
credentials
object
Object containing credential keys (values are masked).
createdAt
string
ISO 8601 timestamp of service creation.
updatedAt
string
ISO 8601 timestamp of last update.

Status codes

  • 201 - Service created successfully
  • 400 - Validation error (invalid request body)
  • 401 - Unauthorized (missing or invalid token)
  • 500 - Internal server error
curl --request POST \
  --url https://api.gaiterguard.com/services \
  --header 'Authorization: Bearer <jwt>' \
  --header 'Content-Type: application/json' \
  --data '{
    "name": "GitHub API",
    "baseUrl": "https://api.github.com",
    "authType": "bearer",
    "credentials": {
      "token": "ghp_xxxxxxxxxxxxx"
    }
  }'
{
  "id": 1,
  "userId": 1,
  "name": "GitHub API",
  "baseUrl": "https://api.github.com",
  "authType": "bearer",
  "credentials": {
    "token": "***"
  },
  "createdAt": "2026-03-03T22:49:00.000Z",
  "updatedAt": "2026-03-03T22:49:00.000Z"
}

Get service

Retrieve a single service by ID. Ownership is verified.

Headers

Authorization
string
required
Bearer token for authentication. Format: Bearer <jwt>

Path parameters

id
number
required
Service ID.

Response

id
number
Unique service identifier.
userId
number
Owner user ID.
name
string
Service name.
baseUrl
string
Base URL for the service API.
authType
string
Authentication type.
credentials
object
Object containing credential keys (values are masked).
createdAt
string
ISO 8601 timestamp of service creation.
updatedAt
string
ISO 8601 timestamp of last update.

Status codes

  • 200 - Service retrieved successfully
  • 400 - Invalid service ID
  • 401 - Unauthorized (missing or invalid token)
  • 404 - Service not found
  • 500 - Internal server error
curl --request GET \
  --url https://api.gaiterguard.com/services/1 \
  --header 'Authorization: Bearer <jwt>'
{
  "id": 1,
  "userId": 1,
  "name": "GitHub API",
  "baseUrl": "https://api.github.com",
  "authType": "bearer",
  "credentials": {
    "token": "***"
  },
  "createdAt": "2026-03-03T22:49:00.000Z",
  "updatedAt": "2026-03-03T22:49:00.000Z"
}

Update service

Update service details (name, baseUrl, or authType). To update credentials, use the credentials endpoint.

Headers

Authorization
string
required
Bearer token for authentication. Format: Bearer <jwt>

Path parameters

id
number
required
Service ID.

Request body

name
string
Service name (1-255 characters). Optional.
baseUrl
string
Base URL for the service API. Must be a valid URL (max 512 characters). Optional.
authType
string
Authentication type. Must be one of: api_key, bearer, basic, oauth2. Optional.
At least one field must be provided for update.

Response

Returns the updated service object.

Status codes

  • 200 - Service updated successfully
  • 400 - Validation error (invalid service ID or request body)
  • 401 - Unauthorized (missing or invalid token)
  • 404 - Service not found
  • 500 - Internal server error
curl --request PUT \
  --url https://api.gaiterguard.com/services/1 \
  --header 'Authorization: Bearer <jwt>' \
  --header 'Content-Type: application/json' \
  --data '{
    "name": "GitHub Enterprise API"
  }'
{
  "id": 1,
  "userId": 1,
  "name": "GitHub Enterprise API",
  "baseUrl": "https://api.github.com",
  "authType": "bearer",
  "credentials": {
    "token": "***"
  },
  "createdAt": "2026-03-03T22:49:00.000Z",
  "updatedAt": "2026-03-03T23:15:00.000Z"
}

Delete service

Delete a service. This cascades to delete all associated credentials and documentation.
This action is irreversible. All agents using this service will no longer have access to it.

Headers

Authorization
string
required
Bearer token for authentication. Format: Bearer <jwt>

Path parameters

id
number
required
Service ID.

Response

message
string
Success message confirming deletion.

Status codes

  • 200 - Service deleted successfully
  • 400 - Invalid service ID
  • 401 - Unauthorized (missing or invalid token)
  • 404 - Service not found
  • 500 - Internal server error
curl --request DELETE \
  --url https://api.gaiterguard.com/services/1 \
  --header 'Authorization: Bearer <jwt>'
{
  "message": "Service deleted"
}

Update credentials

Replace all credentials for a service. Existing credentials are deleted and replaced with the new ones.
This replaces ALL credentials. Any credentials not included in the request will be removed.

Headers

Authorization
string
required
Bearer token for authentication. Format: Bearer <jwt>

Path parameters

id
number
required
Service ID.

Request body

credentials
object
required
Key-value pairs of credential names and values. At least one credential is required. All values are encrypted before storage.

Response

message
string
Success message confirming credential update.
credentialKeys
string[]
Array of credential key names that were stored.

Status codes

  • 200 - Credentials updated successfully
  • 400 - Validation error (invalid service ID or request body)
  • 401 - Unauthorized (missing or invalid token)
  • 404 - Service not found
  • 500 - Internal server error
curl --request POST \
  --url https://api.gaiterguard.com/services/1/credentials \
  --header 'Authorization: Bearer <jwt>' \
  --header 'Content-Type: application/json' \
  --data '{
    "credentials": {
      "token": "ghp_newtoken123456",
      "secret": "newsecret789"
    }
  }'
{
  "message": "Credentials updated",
  "credentialKeys": ["token", "secret"]
}

Build docs developers (and LLMs) love