Skip to main contentIBM Video Streaming Developers

Location

A customer’s location.

type Location {
    # ID of location.
    id: ID!
    # Name of location.
    name: String!
    # Number of servers in location.
    numberOfServers: Int!
    # Servers in location.
    servers: [Server!]!
    # Parent location or region of location.
    parent: LocationsParent!
    # (direct) Child locations of location.
    children: [Location!]!
    # Depth of (deepest possible) child location chain (starting from this location).
    # * A location without any children has children a depth of 0.
    # * A location with a child that doesn't have any children has a depth of 1.
    # * A location that has at least one child with children has a depth of 2.
    childrenDepth: Int!
    # The maximum children depth this location can have. A maximum of 3 locations can be chained
    # together. Therefore if a location:
    # * Is a top-level one, the maximum children depth is 2
    # (it can have child locations with children).
    # * Has a top-level location as parent: the maximum children depth is 1
    # (can have children, but they cannot have additional children).
    # * Has a parent location with a parent location: the maximum children depth is 0
    # (cannot have children, would exceed the overall -3- depth limit).
    childrenDepthLimit: Int!
    # External IP ranges of location.
    externalRanges: [IPv4Range!]!
    # Whether external ranges are inherited from parent location.
    inheritExternalRanges: Boolean!
    # Restriction for client connections. Null if there aren't any restrictions.
    clientRestriction: ClientRestriction
    # Whether clients can connect to servers in this location or not.
    clientConnectionsEnabled: Boolean!
    # Whether clients can fall back to external CDNs or not.
    cdnFallbackEnabled: Boolean!
    # Whether management traffic of servers in location are proxied through parent servers.
    # Video traffic is proxied through parent servers in all cases.
    # Management traffic can only be proxied through ECDN servers (i.e: not through midgress),
    # therefore this can only be enabled in child locations.
    parentProxyEnabled: Boolean!
    # What time was this location created and by whom.
    created: RecordedAction!
    # Last time this location was modified and by whom.
    modified: RecordedAction!
}

Fields

id: ID!

ID of location.

name: String!

Name of location.

numberOfServers: Int!

Number of servers in location.

servers: [Server!]!

Servers in location.

parent: LocationsParent!

Parent location or region of location.

children: [Location!]!

(direct) Child locations of location.

childrenDepth: Int!

Depth of (deepest possible) child location chain (starting from this location).

  • A location without any children has children a depth of 0.
  • A location with a child that doesn’t have any children has a depth of 1.
  • A location that has at least one child with children has a depth of 2.

childrenDepthLimit: Int!

The maximum children depth this location can have. A maximum of 3 locations can be chained together. Therefore if a location:

  • Is a top-level one, the maximum children depth is 2 (it can have child locations with children).
  • Has a top-level location as parent: the maximum children depth is 1 (can have children, but they cannot have additional children).
  • Has a parent location with a parent location: the maximum children depth is 0 (cannot have children, would exceed the overall -3- depth limit).

externalRanges: [IPv4Range!]!

External IP ranges of location.

inheritExternalRanges: Boolean!

Whether external ranges are inherited from parent location.

clientRestriction: ClientRestriction

Restriction for client connections. Null if there aren’t any restrictions.

clientConnectionsEnabled: Boolean!

Whether clients can connect to servers in this location or not.

cdnFallbackEnabled: Boolean!

Whether clients can fall back to external CDNs or not.

parentProxyEnabled: Boolean!

Whether management traffic of servers in location are proxied through parent servers. Video traffic is proxied through parent servers in all cases. Management traffic can only be proxied through ECDN servers (i.e: not through midgress), therefore this can only be enabled in child locations.

created: RecordedAction!

What time was this location created and by whom.

modified: RecordedAction!

Last time this location was modified and by whom.