Group Sites

The group sites API allow you to search, create, fetch, update and delete groups from within the ITC network.


The Group Resource

The group resource contains all information about a requested group site

Properties

  • Name
    group_id
    Required
    Type
    integer
    Description

    Unique identifier for the group.

  • Name
    site
    Required
    Type
    object
    Description
    • Name
      id
      Required
      Type
      integer
      Description

      Unique identifier for the site

    • Name
      name
      Required
      Type
      string
      Description

      The display name of the group

  • Name
    is_head_office
    Required
    Type
    boolean
    Description

    Indicates the site is considered the head office for the group

  • Name
    dates
    Required
    Type
    object
    Description
    • Name
      deleted_at
      Required
      Type
      null | datetime
      Description

      The date the group site was deleted, represented in YYYY-MM-DD HH:MM:SS format. If the group site is not deleted, this will be null

Group Resource

{
  "group_id": 1,
  "site": {
    "id": 2,
    "name": "Foo Group"
  },
  "is_head_office": true,
  "dates": {
    "deleted_at": null,
  }
}

GET/v2/groups/:group_id/sites

Search Group Sites

The search group sites endpoint uses the standard [/searching](search package) from the SDK.

An array of group site resources are returned. If no results are found, an empty collection is returned.

Search Filters

  • Name
    filters.id.equals
    Required
    Type
    integer
    Description

    Match a single site by ID

  • Name
    filters.id.in
    Required
    Type
    array<integer>
    Description

    Match sites by multiple IDs

  • Name
    filters.name.equals
    Required
    Type
    string
    Description

    Match a site by their name

  • Name
    filters.name.in
    Required
    Type
    array<string>
    Description

    Match sites by multiple names

Search Ordering

  • id
  • name

Request

GET
/v2/groups/:group_id/sites
use Compliance\Sdk\ApexV3\Contracts\ApexV3SdkInterface;
use Compliance\Sdk\Authentication\Types\Machine;
use Compliance\Sdk\Search\Search;

private ApexV3SdkInterface $sdk;

$search = new Search();

$response = $this->sdk
  ->v2(new Machine())
  ->group(1)
  ->sites()
  ->search($search);

Response

{
  "data": [
    {
      "group_id": 1,
      "site": {
        "id": 2,
        "name": "Foo Group"
      },
      "is_head_office": true,
      "dates": {
        "deleted_at": null,
      }
    }
  ]
}