Agent

This endpoint is used to create, update, search or delete job agents for a Terrakube organization.

You need to be part of the administrator group to work with this endpoint

Entity fields:

Path
Type
Description

data.type

string

Should be "agent"

data.attributes.name

string

Agent pool name

data.attributes.description

string

agent pool description

data.attributes.url

string

URL where the executor component will be available. Example: http://terrakube-executor-service.self-hosted-executor

Example:

POST {{terrakubeApi}}/api/v1/organization/{{organizationId}}/agent
{
  "data": {
    "type": "agent",
    "attributes": {
      "name": "sample-agent",
      "url": "http://localhost:8090",
      "description": "This is a sample agent"
    }
  }
}

Supported Operations:

get

Returns the relationship agent

Path parameters
organizationIdstringRequired

organization Identifier

Query parameters
filter[agent]stringOptional

Filters the collection of agent using a 'disjoint' RSQL expression

page[number]integer · int32Optional

Number of pages to return. Can be used with page[size]

page[size]integer · int32Optional

Number of elements per page. Can be used with page[number]

page[offset]integer · int32Optional

Offset from 0 to start paginating. Can be used with page[limit]

page[limit]integer · int32Optional

Maximum number of items to return. Can be used with page[offset]

page[totals]stringOptional

For requesting total pages/records be included in the response page meta data

Responses
200

Successful response

application/vnd.api+json
get
GET /api/v1/organization/{organizationId}/agent HTTP/1.1
Host: 
Accept: */*
200

Successful response

{
  "data": [
    {
      "type": "text",
      "id": "text",
      "attributes": {
        "description": null,
        "name": null,
        "url": null
      },
      "relationships": {
        "organization": {
          "data": [
            null
          ]
        }
      }
    }
  ],
  "included": [
    {
      "type": "text",
      "id": "text",
      "attributes": {},
      "relationships": {}
    }
  ]
}
post

Creates an item of type agent and adds it to agent

Path parameters
organizationIdstringRequired

organization Identifier

Body
Responses
201

Successful response

application/vnd.api+json
post
POST /api/v1/organization/{organizationId}/agent HTTP/1.1
Host: 
Content-Type: application/vnd.api+json
Accept: */*
Content-Length: 218

{
  "data": {
    "type": "text",
    "id": "text",
    "attributes": {
      "description": null,
      "name": null,
      "url": null
    },
    "relationships": {
      "organization": {
        "data": [
          null
        ]
      }
    }
  },
  "included": [
    {
      "type": "text",
      "id": "text",
      "attributes": {},
      "relationships": {}
    }
  ]
}
201

Successful response

{
  "data": {
    "type": "text",
    "id": "text",
    "attributes": {
      "description": null,
      "name": null,
      "url": null
    },
    "relationships": {
      "organization": {
        "data": [
          null
        ]
      }
    }
  },
  "included": [
    {
      "type": "text",
      "id": "text",
      "attributes": {},
      "relationships": {}
    }
  ]
}
get

Returns an instance of type agent

Path parameters
organizationIdstringRequired

organization Identifier

agentIdstringRequired

agent Identifier

Query parameters
Responses
200

Successful response

application/vnd.api+json
get
GET /api/v1/organization/{organizationId}/agent/{agentId} HTTP/1.1
Host: 
Accept: */*
200

Successful response

{
  "data": {
    "type": "text",
    "id": "text",
    "attributes": {
      "description": null,
      "name": null,
      "url": null
    },
    "relationships": {
      "organization": {
        "data": [
          null
        ]
      }
    }
  },
  "included": [
    {
      "type": "text",
      "id": "text",
      "attributes": {},
      "relationships": {}
    }
  ]
}
delete

Deletes an instance of type agent

Path parameters
organizationIdstringRequired

organization Identifier

agentIdstringRequired

agent Identifier

Responses
204

Successful response

delete
DELETE /api/v1/organization/{organizationId}/agent/{agentId} HTTP/1.1
Host: 
Accept: */*
204

Successful response

No content

patch

Modifies an instance of type agent

Path parameters
organizationIdstringRequired

organization Identifier

agentIdstringRequired

agent Identifier

Body
Responses
204

Successful response

patch
PATCH /api/v1/organization/{organizationId}/agent/{agentId} HTTP/1.1
Host: 
Content-Type: application/vnd.api+json
Accept: */*
Content-Length: 218

{
  "data": {
    "type": "text",
    "id": "text",
    "attributes": {
      "description": null,
      "name": null,
      "url": null
    },
    "relationships": {
      "organization": {
        "data": [
          null
        ]
      }
    }
  },
  "included": [
    {
      "type": "text",
      "id": "text",
      "attributes": {},
      "relationships": {}
    }
  ]
}
204

Successful response

No content

Last updated

Was this helpful?