Documentation ¶
Index ¶
- Constants
- Variables
- func IsErrAPIFault(err error) bool
- func IsErrAuthenticationFailed(err error) bool
- func IsErrNotFound(err error) bool
- func IsErrPermissionDenied(err error) bool
- func IsErrValidationFailed(err error) bool
- type APIError
- type APIExtensions
- type APIHealth
- type APIImplementation
- type Account
- type AccountPatch
- type AccountRequest
- type AccountUpdate
- type AccountsListQuery
- type Address
- type AllowMemberJoiningRule
- type AllowMemberJoiningRulePatch
- type AllowMemberJoiningRuleRequest
- type AllowMemberJoiningRuleUpdate
- type AuthAPIKeySecret
- type AuthToken
- type AuthTokenRequest
- type AuthenticationError
- type AuthenticationProvider
- type BillingInformation
- type CancellationPolicy
- type CancellationRequest
- type Client
- func (c *Client) APIExtensionsList(ctx context.Context) ([]*APIExtensions, error)
- func (c *Client) APIHealthRead(ctx context.Context) (*APIHealth, error)
- func (c *Client) APIImplementationRead(ctx context.Context) (*APIImplementation, error)
- func (c *Client) AccountsCreate(ctx context.Context, req *AccountRequest) (*Account, error)
- func (c *Client) AccountsDestroy(ctx context.Context, id string) (*Account, error)
- func (c *Client) AccountsList(ctx context.Context, qry ...*AccountsListQuery) ([]*Account, error)
- func (c *Client) AccountsPatch(ctx context.Context, id string, req *AccountPatch) (*Account, error)
- func (c *Client) AccountsRead(ctx context.Context, id string) (*Account, error)
- func (c *Client) AccountsUpdate(ctx context.Context, id string, req *AccountUpdate) (*Account, error)
- func (c *Client) AuthTokenCreate(ctx context.Context, req *AuthTokenRequest) (*AuthToken, error)
- func (c *Client) AuthTokenRefresh(ctx context.Context, req *RefreshTokenRequest) (*AuthToken, error)
- func (c *Client) Authenticate(ctx context.Context, auth AuthenticationProvider) error
- func (c *Client) ConnectionsCancellationPolicy(ctx context.Context, id string, qry ...*ConnectionsCancellationPolicyQuery) (*CancellationPolicy, error)
- func (c *Client) ConnectionsCreate(ctx context.Context, req *ConnectionRequest) (*Connection, error)
- func (c *Client) ConnectionsDestroy(ctx context.Context, id string, req *CancellationRequest) (*Connection, error)
- func (c *Client) ConnectionsList(ctx context.Context, qry ...*ConnectionsListQuery) ([]*Connection, error)
- func (c *Client) ConnectionsLoaDownload(ctx context.Context, id string) (Response, error)
- func (c *Client) ConnectionsLoaUpload(ctx context.Context, id string, data []byte) (Response, error)
- func (c *Client) ConnectionsPatch(ctx context.Context, id string, req *ConnectionPatch) (*Connection, error)
- func (c *Client) ConnectionsRead(ctx context.Context, id string) (*Connection, error)
- func (c *Client) ConnectionsUpdate(ctx context.Context, id string, req *ConnectionUpdate) (*Connection, error)
- func (c *Client) ContactsCreate(ctx context.Context, req *ContactRequest) (*Contact, error)
- func (c *Client) ContactsDestroy(ctx context.Context, id string) (*Contact, error)
- func (c *Client) ContactsList(ctx context.Context, qry ...*ContactsListQuery) ([]*Contact, error)
- func (c *Client) ContactsPatch(ctx context.Context, id string, req *ContactPatch) (*Contact, error)
- func (c *Client) ContactsRead(ctx context.Context, id string) (*Contact, error)
- func (c *Client) ContactsUpdate(ctx context.Context, id string, req *ContactUpdate) (*Contact, error)
- func (c *Client) DevicesList(ctx context.Context, qry ...*DevicesListQuery) ([]*Device, error)
- func (c *Client) DevicesRead(ctx context.Context, id string) (*Device, error)
- func (c *Client) FacilitiesList(ctx context.Context, qry ...*FacilitiesListQuery) ([]*Facility, error)
- func (c *Client) FacilitiesRead(ctx context.Context, id string) (*Facility, error)
- func (c *Client) IPsCreate(ctx context.Context, req *IPAddressRequest) (*IPAddress, error)
- func (c *Client) IPsList(ctx context.Context, qry ...*IPsListQuery) ([]*IPAddress, error)
- func (c *Client) IPsPatch(ctx context.Context, id string, req *IPAddressPatch) (*IPAddress, error)
- func (c *Client) IPsRead(ctx context.Context, id string) (*IPAddress, error)
- func (c *Client) IPsUpdate(ctx context.Context, id string, req *IPAddressUpdate) (*IPAddress, error)
- func (c *Client) MacsCreate(ctx context.Context, req *MacAddressRequest) (*MacAddress, error)
- func (c *Client) MacsDestroy(ctx context.Context, id string) (*MacAddress, error)
- func (c *Client) MacsList(ctx context.Context, qry ...*MacsListQuery) ([]*MacAddress, error)
- func (c *Client) MacsRead(ctx context.Context, id string) (*MacAddress, error)
- func (c *Client) MemberJoiningRulesCreate(ctx context.Context, req MemberJoiningRuleRequest) (MemberJoiningRule, error)
- func (c *Client) MemberJoiningRulesDestroy(ctx context.Context, id string) (MemberJoiningRule, error)
- func (c *Client) MemberJoiningRulesList(ctx context.Context, qry ...*MemberJoiningRulesListQuery) ([]MemberJoiningRule, error)
- func (c *Client) MemberJoiningRulesPatch(ctx context.Context, id string, req MemberJoiningRulePatch) (MemberJoiningRule, error)
- func (c *Client) MemberJoiningRulesRead(ctx context.Context, id string) (MemberJoiningRule, error)
- func (c *Client) MemberJoiningRulesUpdate(ctx context.Context, id string, req MemberJoiningRuleUpdate) (MemberJoiningRule, error)
- func (c *Client) MetroAreaNetworksList(ctx context.Context, qry ...*MetroAreaNetworksListQuery) ([]*MetroAreaNetwork, error)
- func (c *Client) MetroAreaNetworksRead(ctx context.Context, id string) (*MetroAreaNetwork, error)
- func (c *Client) MetroAreasList(ctx context.Context, qry ...*MetroAreasListQuery) ([]*MetroArea, error)
- func (c *Client) MetroAreasRead(ctx context.Context, id string) ([]*MetroArea, error)
- func (c *Client) NetworkFeatureConfigsCreate(ctx context.Context, req NetworkFeatureConfigRequest) (NetworkFeatureConfig, error)
- func (c *Client) NetworkFeatureConfigsDestroy(ctx context.Context, id string) (NetworkFeatureConfig, error)
- func (c *Client) NetworkFeatureConfigsList(ctx context.Context, qry ...*NetworkFeatureConfigsListQuery) ([]NetworkFeatureConfig, error)
- func (c *Client) NetworkFeatureConfigsPatch(ctx context.Context, id string, req NetworkFeatureConfigPatch) (NetworkFeatureConfig, error)
- func (c *Client) NetworkFeatureConfigsRead(ctx context.Context, id string) (NetworkFeatureConfig, error)
- func (c *Client) NetworkFeatureConfigsUpdate(ctx context.Context, id string, req NetworkFeatureConfigUpdate) (NetworkFeatureConfig, error)
- func (c *Client) NetworkFeaturesList(ctx context.Context, qry ...*NetworkFeaturesListQuery) ([]NetworkFeature, error)
- func (c *Client) NetworkFeaturesRead(ctx context.Context, id string) (NetworkFeature, error)
- func (c *Client) NetworkServiceCancellationPolicyRead(ctx context.Context, id string, ...) (*CancellationPolicy, error)
- func (c *Client) NetworkServiceChangeRequestCreate(ctx context.Context, id string, req *NetworkServiceChangeRequest) (*NetworkServiceChangeRequest, error)
- func (c *Client) NetworkServiceChangeRequestDestroy(ctx context.Context, id string) (*NetworkServiceChangeRequest, error)
- func (c *Client) NetworkServiceChangeRequestRead(ctx context.Context, id string) (*NetworkServiceChangeRequest, error)
- func (c *Client) NetworkServiceConfigCancellationPolicyRead(ctx context.Context, id string, ...) (*CancellationPolicy, error)
- func (c *Client) NetworkServiceConfigsCreate(ctx context.Context, req NetworkServiceConfigRequest) (NetworkServiceConfig, error)
- func (c *Client) NetworkServiceConfigsDestroy(ctx context.Context, id string, req *CancellationRequest) (NetworkServiceConfig, error)
- func (c *Client) NetworkServiceConfigsList(ctx context.Context, qry ...*NetworkServiceConfigsListQuery) ([]NetworkServiceConfig, error)
- func (c *Client) NetworkServiceConfigsPatch(ctx context.Context, id string, req NetworkServiceConfigPatch) (NetworkServiceConfig, error)
- func (c *Client) NetworkServiceConfigsRead(ctx context.Context, id string) (NetworkServiceConfig, error)
- func (c *Client) NetworkServiceConfigsUpdate(ctx context.Context, id string, req NetworkServiceConfigUpdate) (NetworkServiceConfig, error)
- func (c *Client) NetworkServicesCreate(ctx context.Context, req NetworkServiceRequest) (NetworkService, error)
- func (c *Client) NetworkServicesDestroy(ctx context.Context, id string, req *CancellationRequest) (NetworkService, error)
- func (c *Client) NetworkServicesList(ctx context.Context, qry ...*NetworkServicesListQuery) ([]NetworkService, error)
- func (c *Client) NetworkServicesPatch(ctx context.Context, id string, req NetworkServicePatch) (NetworkService, error)
- func (c *Client) NetworkServicesRead(ctx context.Context, id string) (NetworkService, error)
- func (c *Client) NetworkServicesUpdate(ctx context.Context, id string, req NetworkServiceUpdate) (NetworkService, error)
- func (c *Client) PopsList(ctx context.Context, qry ...*PopsListQuery) ([]*PointOfPresence, error)
- func (c *Client) PopsRead(ctx context.Context, id string) (*PointOfPresence, error)
- func (c *Client) PortReservationCancellationPolicy(ctx context.Context, id string, qry ...*PortReservationCancellationPolicyQuery) (*CancellationPolicy, error)
- func (c *Client) PortReservationsCreate(ctx context.Context, req *PortReservationRequest) (*PortReservation, error)
- func (c *Client) PortReservationsDestroy(ctx context.Context, id string, req *CancellationRequest) (*PortReservation, error)
- func (c *Client) PortReservationsList(ctx context.Context, qry ...*PortReservationsListQuery) ([]*PortReservation, error)
- func (c *Client) PortReservationsLoaDownload(ctx context.Context, id string) (Response, error)
- func (c *Client) PortReservationsLoaUpload(ctx context.Context, id string, data []byte) (Response, error)
- func (c *Client) PortReservationsPatch(ctx context.Context, id string, req *PortReservationPatch) (*PortReservation, error)
- func (c *Client) PortReservationsRead(ctx context.Context, id string) (*PortReservation, error)
- func (c *Client) PortReservationsUpdate(ctx context.Context, id string, req *PortReservationUpdate) (*PortReservation, error)
- func (c *Client) PortsList(ctx context.Context, qry ...*PortsListQuery) ([]*Port, error)
- func (c *Client) PortsRead(ctx context.Context, id string) (*Port, error)
- func (c *Client) ProductOfferingsList(ctx context.Context, qry ...*ProductOfferingsListQuery) ([]ProductOffering, error)
- func (c *Client) ProductOfferingsRead(ctx context.Context, id string) (ProductOffering, error)
- func (c *Client) RoleAssignmentsCreate(ctx context.Context, req *RoleAssignmentRequest) (*RoleAssignment, error)
- func (c *Client) RoleAssignmentsDestroy(ctx context.Context, id string) (*RoleAssignment, error)
- func (c *Client) RoleAssignmentsList(ctx context.Context, qry ...*RoleAssignmentsListQuery) ([]*RoleAssignment, error)
- func (c *Client) RoleAssignmentsRead(ctx context.Context, id string) (*RoleAssignment, error)
- func (c *Client) RolesList(ctx context.Context, qry ...*RolesListQuery) ([]*Role, error)
- func (c *Client) RolesRead(ctx context.Context, id string) (*Role, error)
- func (c *Client) SetBearer(token string)
- type CloudNetworkProductOffering
- type CloudNetworkProductOfferingPatch
- type CloudNetworkService
- type CloudNetworkServiceConfig
- type CloudNetworkServiceConfigPatch
- type CloudNetworkServiceConfigRequest
- type CloudNetworkServiceConfigUpdate
- type CloudNetworkServicePatch
- type CloudNetworkServiceRequest
- type CloudNetworkServiceUpdate
- type Conflict
- type Connection
- type ConnectionPatch
- type ConnectionProductOffering
- type ConnectionProductOfferingPatch
- type ConnectionRequest
- type ConnectionUpdate
- type ConnectionsCancellationPolicyQuery
- type ConnectionsListQuery
- type Contact
- type ContactPatch
- type ContactRequest
- type ContactUpdate
- type ContactsListQuery
- type Date
- type DenyMemberJoiningRule
- type DenyMemberJoiningRulePatch
- type DenyMemberJoiningRuleRequest
- type DenyMemberJoiningRuleUpdate
- type Device
- type DeviceCapability
- type DeviceConnection
- type DevicesListQuery
- type Event
- type ExchangeLanNetworkProductOffering
- type ExchangeLanNetworkProductOfferingPatch
- type ExchangeLanNetworkService
- type ExchangeLanNetworkServiceConfig
- type ExchangeLanNetworkServiceConfigPatch
- type ExchangeLanNetworkServiceConfigRequest
- type ExchangeLanNetworkServiceConfigUpdate
- type FacilitiesListQuery
- type Facility
- type IPAddress
- type IPAddressPatch
- type IPAddressRequest
- type IPAddressUpdate
- type IPsListQuery
- type IXPSpecificFeatureFlag
- type IXPSpecificFeatureFlagConfig
- type MP2MPNetworkProductOffering
- type MP2MPNetworkProductOfferingPatch
- type MP2MPNetworkService
- type MP2MPNetworkServiceConfig
- type MP2MPNetworkServiceConfigPatch
- type MP2MPNetworkServiceConfigRequest
- type MP2MPNetworkServiceConfigUpdate
- type MP2MPNetworkServicePatch
- type MP2MPNetworkServiceRequest
- type MP2MPNetworkServiceUpdate
- type MacAddress
- type MacAddressRequest
- type MacsListQuery
- type MemberJoiningRule
- type MemberJoiningRulePatch
- type MemberJoiningRuleRequest
- type MemberJoiningRuleUpdate
- type MemberJoiningRulesListQuery
- type MetroArea
- type MetroAreaNetwork
- type MetroAreaNetworksListQuery
- type MetroAreasListQuery
- type NetworkFeature
- type NetworkFeatureConfig
- type NetworkFeatureConfigPatch
- type NetworkFeatureConfigRequest
- type NetworkFeatureConfigUpdate
- type NetworkFeatureConfigsListQuery
- type NetworkFeaturesListQuery
- type NetworkService
- type NetworkServiceCancellationPolicyReadQuery
- type NetworkServiceChangeRequest
- type NetworkServiceConfig
- type NetworkServiceConfigCancellationPolicyReadQuery
- type NetworkServiceConfigPatch
- type NetworkServiceConfigRequest
- type NetworkServiceConfigUpdate
- type NetworkServiceConfigsListQuery
- type NetworkServiceDeleteResponse
- type NetworkServicePatch
- type NetworkServiceRequest
- type NetworkServiceUpdate
- type NetworkServicesListQuery
- type NotFoundError
- type OAuth2ClientCredentials
- type P2MPNetworkProductOffering
- type P2MPNetworkProductOfferingPatch
- type P2MPNetworkService
- type P2MPNetworkServiceConfig
- type P2MPNetworkServiceConfigPatch
- type P2MPNetworkServiceConfigRequest
- type P2MPNetworkServiceConfigUpdate
- type P2MPNetworkServicePatch
- type P2MPNetworkServiceRequest
- type P2MPNetworkServiceUpdate
- type P2PNetworkProductOffering
- type P2PNetworkProductOfferingPatch
- type P2PNetworkService
- type P2PNetworkServiceConfig
- type P2PNetworkServiceConfigPatch
- type P2PNetworkServiceConfigRequest
- type P2PNetworkServiceConfigUpdate
- type P2PNetworkServicePatch
- type P2PNetworkServiceRequest
- type P2PNetworkServiceUpdate
- type PermissionError
- type PointOfPresence
- type Polymorphic
- type PolymorphicMemberJoiningRule
- type PolymorphicMemberJoiningRulePatch
- type PolymorphicMemberJoiningRuleRequest
- type PolymorphicMemberJoiningRuleUpdate
- type PolymorphicNetworkFeature
- type PolymorphicNetworkFeatureConfig
- type PolymorphicNetworkFeatureConfigPatch
- type PolymorphicNetworkFeatureConfigRequest
- type PolymorphicNetworkFeatureConfigUpdate
- type PolymorphicNetworkService
- type PolymorphicNetworkServiceConfig
- type PolymorphicNetworkServiceConfigPatch
- type PolymorphicNetworkServiceConfigRequest
- type PolymorphicNetworkServiceConfigUpdate
- type PolymorphicNetworkServiceDeleteResponse
- type PolymorphicNetworkServicePatch
- type PolymorphicNetworkServiceRequest
- type PolymorphicNetworkServiceUpdate
- type PolymorphicProductOffering
- type PolymorphicProductOfferingPatch
- type PolymorphicVLANConfig
- type PopsListQuery
- type Port
- type PortReservation
- type PortReservationCancellationPolicyQuery
- type PortReservationPatch
- type PortReservationRequest
- type PortReservationUpdate
- type PortReservationsListQuery
- type PortStatistics
- type PortsListQuery
- type ProblemResponse
- type ProductOffering
- type ProductOfferingPatch
- type ProductOfferingsListQuery
- type RefreshTokenRequest
- type Response
- type Role
- type RoleAssignment
- type RoleAssignmentPatch
- type RoleAssignmentRequest
- type RoleAssignmentUpdate
- type RoleAssignmentsListQuery
- type RolePatch
- type RoleRequest
- type RoleUpdate
- type RolesListQuery
- type RouteServerNetworkFeature
- type RouteServerNetworkFeatureConfig
- type RouteServerNetworkFeatureConfigPatch
- type RouteServerNetworkFeatureConfigRequest
- type RouteServerNetworkFeatureConfigUpdate
- type Status
- type VLANConfig
- type VLANConfigDot1Q
- type VLANConfigPort
- type VLANConfigQinQ
- type ValidationError
- type ValidationErrorProp
- type ValidationErrorProperty
Constants ¶
const AllowMemberJoiningRulePatchType = "allow"
AllowMemberJoiningRulePatchType is a polymorphic type value for AllowMemberJoiningRulePatch
const AllowMemberJoiningRuleRequestType = "allow"
AllowMemberJoiningRuleRequestType is a polymorphic type value for AllowMemberJoiningRuleRequest
const AllowMemberJoiningRuleType = "allow"
AllowMemberJoiningRuleType is a polymorphic type value for AllowMemberJoiningRule
const AllowMemberJoiningRuleUpdateType = "allow"
AllowMemberJoiningRuleUpdateType is a polymorphic type value for AllowMemberJoiningRuleUpdate
const CloudNetworkProductOfferingPatchType = "cloud_vc"
CloudNetworkProductOfferingPatchType is a polymorphic type value for CloudNetworkProductOfferingPatch
const CloudNetworkProductOfferingType = "cloud_vc"
CloudNetworkProductOfferingType is a polymorphic type value for CloudNetworkProductOffering
const CloudNetworkServiceConfigPatchType = "cloud_vc"
CloudNetworkServiceConfigPatchType is a polymorphic type value for CloudNetworkServiceConfigPatch
const CloudNetworkServiceConfigRequestType = "cloud_vc"
CloudNetworkServiceConfigRequestType is a polymorphic type value for CloudNetworkServiceConfigRequest
const CloudNetworkServiceConfigType = "cloud_vc"
CloudNetworkServiceConfigType is a polymorphic type value for CloudNetworkServiceConfig
const CloudNetworkServiceConfigUpdateType = "cloud_vc"
CloudNetworkServiceConfigUpdateType is a polymorphic type value for CloudNetworkServiceConfigUpdate
const CloudNetworkServicePatchType = "cloud_vc"
CloudNetworkServicePatchType is a polymorphic type value for CloudNetworkServicePatch
const CloudNetworkServiceRequestType = "cloud_vc"
CloudNetworkServiceRequestType is a polymorphic type value for CloudNetworkServiceRequest
const CloudNetworkServiceType = "cloud_vc"
CloudNetworkServiceType is a polymorphic type value for CloudNetworkService
const CloudNetworkServiceUpdateType = "cloud_vc"
CloudNetworkServiceUpdateType is a polymorphic type value for CloudNetworkServiceUpdate
const ConnectionProductOfferingPatchType = "connection"
ConnectionProductOfferingPatchType is a polymorphic type value for ConnectionProductOfferingPatch
const ConnectionProductOfferingType = "connection"
ConnectionProductOfferingType is a polymorphic type value for ConnectionProductOffering
const DenyMemberJoiningRulePatchType = "deny"
DenyMemberJoiningRulePatchType is a polymorphic type value for DenyMemberJoiningRulePatch
const DenyMemberJoiningRuleRequestType = "deny"
DenyMemberJoiningRuleRequestType is a polymorphic type value for DenyMemberJoiningRuleRequest
const DenyMemberJoiningRuleType = "deny"
DenyMemberJoiningRuleType is a polymorphic type value for DenyMemberJoiningRule
const DenyMemberJoiningRuleUpdateType = "deny"
DenyMemberJoiningRuleUpdateType is a polymorphic type value for DenyMemberJoiningRuleUpdate
const ExchangeLanNetworkProductOfferingPatchType = "exchange_lan"
ExchangeLanNetworkProductOfferingPatchType is a polymorphic type value for ExchangeLanNetworkProductOfferingPatch
const ExchangeLanNetworkProductOfferingType = "exchange_lan"
ExchangeLanNetworkProductOfferingType is a polymorphic type value for ExchangeLanNetworkProductOffering
const ExchangeLanNetworkServiceConfigPatchType = "exchange_lan"
ExchangeLanNetworkServiceConfigPatchType is a polymorphic type value for ExchangeLanNetworkServiceConfigPatch
const ExchangeLanNetworkServiceConfigRequestType = "exchange_lan"
ExchangeLanNetworkServiceConfigRequestType is a polymorphic type value for ExchangeLanNetworkServiceConfigRequest
const ExchangeLanNetworkServiceConfigType = "exchange_lan"
ExchangeLanNetworkServiceConfigType is a polymorphic type value for ExchangeLanNetworkServiceConfig
const ExchangeLanNetworkServiceConfigUpdateType = "exchange_lan"
ExchangeLanNetworkServiceConfigUpdateType is a polymorphic type value for ExchangeLanNetworkServiceConfigUpdate
const ExchangeLanNetworkServiceType = "exchange_lan"
ExchangeLanNetworkServiceType is a polymorphic type value for ExchangeLanNetworkService
const MP2MPNetworkProductOfferingPatchType = "mp2mp_vc"
MP2MPNetworkProductOfferingPatchType is a polymorphic type value for MP2MPNetworkProductOfferingPatch
const MP2MPNetworkProductOfferingType = "mp2mp_vc"
MP2MPNetworkProductOfferingType is a polymorphic type value for MP2MPNetworkProductOffering
const MP2MPNetworkServiceConfigPatchType = "mp2mp_vc"
MP2MPNetworkServiceConfigPatchType is a polymorphic type value for MP2MPNetworkServiceConfigPatch
const MP2MPNetworkServiceConfigRequestType = "mp2mp_vc"
MP2MPNetworkServiceConfigRequestType is a polymorphic type value for MP2MPNetworkServiceConfigRequest
const MP2MPNetworkServiceConfigType = "mp2mp_vc"
MP2MPNetworkServiceConfigType is a polymorphic type value for MP2MPNetworkServiceConfig
const MP2MPNetworkServiceConfigUpdateType = "mp2mp_vc"
MP2MPNetworkServiceConfigUpdateType is a polymorphic type value for MP2MPNetworkServiceConfigUpdate
const MP2MPNetworkServicePatchType = "mp2mp_vc"
MP2MPNetworkServicePatchType is a polymorphic type value for MP2MPNetworkServicePatch
const MP2MPNetworkServiceRequestType = "mp2mp_vc"
MP2MPNetworkServiceRequestType is a polymorphic type value for MP2MPNetworkServiceRequest
const MP2MPNetworkServiceType = "mp2mp_vc"
MP2MPNetworkServiceType is a polymorphic type value for MP2MPNetworkService
const MP2MPNetworkServiceUpdateType = "mp2mp_vc"
MP2MPNetworkServiceUpdateType is a polymorphic type value for MP2MPNetworkServiceUpdate
const P2MPNetworkProductOfferingPatchType = "p2mp_vc"
P2MPNetworkProductOfferingPatchType is a polymorphic type value for P2MPNetworkProductOfferingPatch
const P2MPNetworkProductOfferingType = "p2mp_vc"
P2MPNetworkProductOfferingType is a polymorphic type value for P2MPNetworkProductOffering
const P2MPNetworkServiceConfigPatchType = "p2mp_vc"
P2MPNetworkServiceConfigPatchType is a polymorphic type value for P2MPNetworkServiceConfigPatch
const P2MPNetworkServiceConfigRequestType = "p2mp_vc"
P2MPNetworkServiceConfigRequestType is a polymorphic type value for P2MPNetworkServiceConfigRequest
const P2MPNetworkServiceConfigType = "p2mp_vc"
P2MPNetworkServiceConfigType is a polymorphic type value for P2MPNetworkServiceConfig
const P2MPNetworkServiceConfigUpdateType = "p2mp_vc"
P2MPNetworkServiceConfigUpdateType is a polymorphic type value for P2MPNetworkServiceConfigUpdate
const P2MPNetworkServicePatchType = "p2mp_vc"
P2MPNetworkServicePatchType is a polymorphic type value for P2MPNetworkServicePatch
const P2MPNetworkServiceRequestType = "p2mp_vc"
P2MPNetworkServiceRequestType is a polymorphic type value for P2MPNetworkServiceRequest
const P2MPNetworkServiceType = "p2mp_vc"
P2MPNetworkServiceType is a polymorphic type value for P2MPNetworkService
const P2MPNetworkServiceUpdateType = "p2mp_vc"
P2MPNetworkServiceUpdateType is a polymorphic type value for P2MPNetworkServiceUpdate
const P2PNetworkProductOfferingPatchType = "p2p_vc"
P2PNetworkProductOfferingPatchType is a polymorphic type value for P2PNetworkProductOfferingPatch
const P2PNetworkProductOfferingType = "p2p_vc"
P2PNetworkProductOfferingType is a polymorphic type value for P2PNetworkProductOffering
const P2PNetworkServiceConfigPatchType = "p2p_vc"
P2PNetworkServiceConfigPatchType is a polymorphic type value for P2PNetworkServiceConfigPatch
const P2PNetworkServiceConfigRequestType = "p2p_vc"
P2PNetworkServiceConfigRequestType is a polymorphic type value for P2PNetworkServiceConfigRequest
const P2PNetworkServiceConfigType = "p2p_vc"
P2PNetworkServiceConfigType is a polymorphic type value for P2PNetworkServiceConfig
const P2PNetworkServiceConfigUpdateType = "p2p_vc"
P2PNetworkServiceConfigUpdateType is a polymorphic type value for P2PNetworkServiceConfigUpdate
const P2PNetworkServicePatchType = "p2p_vc"
P2PNetworkServicePatchType is a polymorphic type value for P2PNetworkServicePatch
const P2PNetworkServiceRequestType = "p2p_vc"
P2PNetworkServiceRequestType is a polymorphic type value for P2PNetworkServiceRequest
const P2PNetworkServiceType = "p2p_vc"
P2PNetworkServiceType is a polymorphic type value for P2PNetworkService
const P2PNetworkServiceUpdateType = "p2p_vc"
P2PNetworkServiceUpdateType is a polymorphic type value for P2PNetworkServiceUpdate
const RouteServerNetworkFeatureConfigPatchType = "route_server"
RouteServerNetworkFeatureConfigPatchType is a polymorphic type value for RouteServerNetworkFeatureConfigPatch
const RouteServerNetworkFeatureConfigRequestType = "route_server"
RouteServerNetworkFeatureConfigRequestType is a polymorphic type value for RouteServerNetworkFeatureConfigRequest
const RouteServerNetworkFeatureConfigType = "route_server"
RouteServerNetworkFeatureConfigType is a polymorphic type value for RouteServerNetworkFeatureConfig
const RouteServerNetworkFeatureConfigUpdateType = "route_server"
RouteServerNetworkFeatureConfigUpdateType is a polymorphic type value for RouteServerNetworkFeatureConfigUpdate
const RouteServerNetworkFeatureType = "route_server"
RouteServerNetworkFeatureType is a polymorphic type value for RouteServerNetworkFeature
const SchemaVersion = "2.4.2"
SchemaVersion is the version of the ix-api schema
const VLANConfigDot1QType = "dot1q"
VLANConfigDot1QType is a polymorphic type value for VLANConfigDot1Q
const VLANConfigPortType = "port"
VLANConfigPortType is a polymorphic type value for VLANConfigPort
const VLANConfigQinQType = "qinq"
VLANConfigQinQType is a polymorphic type value for VLANConfigQinQ
Variables ¶
var ( // ErrInvalidPolymorphicType is raised when a polymorphic type could // not be resolved. ErrInvalidPolymorphicType = errors.New("unknown polymorphic type") )
Errors
Functions ¶
func IsErrAPIFault ¶
IsErrAPIFault checks if the error is an APIError
func IsErrAuthenticationFailed ¶
IsErrAuthenticationFailed checks if the error is an authentication error
func IsErrNotFound ¶
IsErrNotFound checks if the error is a not found error
func IsErrPermissionDenied ¶
IsErrPermissionDenied checks if the error is a PermissionError
func IsErrValidationFailed ¶
IsErrValidationFailed checks if this is an validation error
Types ¶
type APIError ¶
type APIError struct {
ProblemResponse
}
APIError is a generic api error
func AsErrAPIFault ¶
AsErrAPIFault tries to convert an error into an APIError, a generic API error.
type APIExtensions ¶
type APIExtensions struct { // Name Name of the extension. // Name string `json:"name,omitempty"` // Publisher Publisher of the extension. // Publisher string `json:"publisher,omitempty"` // DocumentationURL URL of the documentation homepage of the extension. // DocumentationURL string `json:"documentation_url,omitempty"` // BaseURL Extension endpoints are available under this base url. // BaseURL string `json:"base_url,omitempty"` // SpecURL URL of the extensions schema specifications. // The schema format schould be OpenAPI v3. // SpecURL string `json:"spec_url,omitempty"` }
APIExtensions Implementation specific API extensions
type APIHealth ¶
type APIHealth struct { // Status status indicates whether the service status is // acceptable or not. Status string `json:"status,omitempty"` // Version Public version of the service. // Version string `json:"version,omitempty"` // Releaseid Release version of the api implementation. // Releaseid string `json:"releaseId,omitempty"` // Notes Array of notes relevant to current state of health. Notes []string `json:"notes,omitempty"` // Output Raw error output, in case of "fail" or "warn" states. Output string `json:"output,omitempty"` // Serviceid A unique identifier of the service, in the application scope. Serviceid string `json:"serviceId,omitempty"` // Description A human-friendly description of the service. Description string `json:"description,omitempty"` // Checks The "checks" object MAY have a number of unique keys, // one for each logical downstream dependency or sub-component. // // Since each sub-component may be backed by several nodes // with varying health statuses, these keys point to arrays // of objects. In case of a single-node sub-component // (or if presence of nodes is not relevant), a single-element // array SHOULD be used as the value, for consistency. // // Please see // https://tools.ietf.org/id/draft-inadarei-api-health-check-04.html#the-checks-object // for details. Checks map[string]interface{} `json:"checks,omitempty"` // Links Is an object containing link relations and URIs [RFC3986] // for external links that MAY contain more information about // the health of the endpoint. Links map[string]interface{} `json:"links,omitempty"` }
APIHealth Health Status Response
type APIImplementation ¶
type APIImplementation struct { // SchemaVersion Version of the implemented IX-API schema. // SchemaVersion string `json:"schema_version,omitempty"` // ServiceVersion Version of the API service. // ServiceVersion string `json:"service_version,omitempty"` // SupportedNetworkServiceTypes Array of network service types, supported by the IX. // SupportedNetworkServiceTypes []string `json:"supported_network_service_types,omitempty"` // SupportedNetworkServiceConfigTypes Array of supported network service config types. // SupportedNetworkServiceConfigTypes []string `json:"supported_network_service_config_types,omitempty"` // SupportedNetworkFeatureTypes Array of supported network feature types. // SupportedNetworkFeatureTypes []string `json:"supported_network_feature_types,omitempty"` // SupportedNetworkFeatureConfigTypes Array of supported network feature config types. // SupportedNetworkFeatureConfigTypes []string `json:"supported_network_feature_config_types,omitempty"` // SupportedOperations Array of implemented operations of the ix-api schema. // SupportedOperations []string `json:"supported_operations,omitempty"` }
APIImplementation API Implementation
type Account ¶
type Account struct { // State is a state State *string `json:"state,omitempty"` // Status is a status Status []*Status `json:"status,omitempty"` // ManagingAccount The `id` of a managing account. Can be used for creating // a customer hierachy. *(Sensitive Property)* // ManagingAccount *string `json:"managing_account,omitempty"` // Name Name of the account, how it gets represented // in e.g. a "customers list". // Name string `json:"name,omitempty"` // LegalName Legal name of the organisation. // Only required when it's different from the account name. // *(Sensitive Property)* // LegalName *string `json:"legal_name,omitempty"` // BillingInformation is a billing_information BillingInformation *BillingInformation `json:"billing_information,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* ExternalRef *string `json:"external_ref,omitempty"` // Discoverable The account will be included for all members of the // ix in the list of accounts. // // Only `id`, `name` and `present_in_metro_area_networks` // are provided to other members. Discoverable *bool `json:"discoverable,omitempty"` // MetroAreaNetworkPresence Informal list of `MetroAreaNetwork` ids, indicating the // presence to other accounts. // The list is maintained by the account and can be empty. // MetroAreaNetworkPresence []string `json:"metro_area_network_presence,omitempty"` // ID is a id ID string `json:"id,omitempty"` // Address is a address Address *Address `json:"address,omitempty"` }
Account Account
type AccountPatch ¶
type AccountPatch struct { // ManagingAccount The `id` of a managing account. Can be used for creating // a customer hierachy. *(Sensitive Property)* // ManagingAccount *string `json:"managing_account,omitempty"` // Name Name of the account, how it gets represented // in e.g. a "customers list". // Name *string `json:"name,omitempty"` // LegalName Legal name of the organisation. // Only required when it's different from the account name. // *(Sensitive Property)* // LegalName *string `json:"legal_name,omitempty"` // BillingInformation is a billing_information BillingInformation *BillingInformation `json:"billing_information,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* ExternalRef *string `json:"external_ref,omitempty"` // Discoverable The account will be included for all members of the // ix in the list of accounts. // // Only `id`, `name` and `present_in_metro_area_networks` // are provided to other members. Discoverable *bool `json:"discoverable,omitempty"` // MetroAreaNetworkPresence Informal list of `MetroAreaNetwork` ids, indicating the // presence to other accounts. // The list is maintained by the account and can be empty. // MetroAreaNetworkPresence []string `json:"metro_area_network_presence,omitempty"` // Address is a address Address *Address `json:"address,omitempty"` }
AccountPatch Account Update
type AccountRequest ¶
type AccountRequest struct { // ManagingAccount The `id` of a managing account. Can be used for creating // a customer hierachy. *(Sensitive Property)* // ManagingAccount *string `json:"managing_account,omitempty"` // Name Name of the account, how it gets represented // in e.g. a "customers list". // Name string `json:"name,omitempty"` // LegalName Legal name of the organisation. // Only required when it's different from the account name. // *(Sensitive Property)* // LegalName *string `json:"legal_name,omitempty"` // BillingInformation is a billing_information BillingInformation *BillingInformation `json:"billing_information,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* ExternalRef *string `json:"external_ref,omitempty"` // Discoverable The account will be included for all members of the // ix in the list of accounts. // // Only `id`, `name` and `present_in_metro_area_networks` // are provided to other members. Discoverable *bool `json:"discoverable,omitempty"` // MetroAreaNetworkPresence Informal list of `MetroAreaNetwork` ids, indicating the // presence to other accounts. // The list is maintained by the account and can be empty. // MetroAreaNetworkPresence []string `json:"metro_area_network_presence,omitempty"` // Address is a address Address *Address `json:"address,omitempty"` }
AccountRequest Account Request
type AccountUpdate ¶
type AccountUpdate struct { // ManagingAccount The `id` of a managing account. Can be used for creating // a customer hierachy. *(Sensitive Property)* // ManagingAccount *string `json:"managing_account,omitempty"` // Name Name of the account, how it gets represented // in e.g. a "customers list". // Name string `json:"name,omitempty"` // LegalName Legal name of the organisation. // Only required when it's different from the account name. // *(Sensitive Property)* // LegalName *string `json:"legal_name,omitempty"` // BillingInformation is a billing_information BillingInformation *BillingInformation `json:"billing_information,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* ExternalRef *string `json:"external_ref,omitempty"` // Discoverable The account will be included for all members of the // ix in the list of accounts. // // Only `id`, `name` and `present_in_metro_area_networks` // are provided to other members. Discoverable *bool `json:"discoverable,omitempty"` // MetroAreaNetworkPresence Informal list of `MetroAreaNetwork` ids, indicating the // presence to other accounts. // The list is maintained by the account and can be empty. // MetroAreaNetworkPresence []string `json:"metro_area_network_presence,omitempty"` // Address is a address Address *Address `json:"address,omitempty"` }
AccountUpdate Account Update
type AccountsListQuery ¶
type AccountsListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // State is a state State string `json:"state,omitempty"` // StateIsNot is a state__is_not StateIsNot string `json:"state__is_not,omitempty"` // ManagingAccount is a managing_account ManagingAccount string `json:"managing_account,omitempty"` // Billable is a billable Billable int `json:"billable,omitempty"` // ExternalRef is a external_ref ExternalRef string `json:"external_ref,omitempty"` // Name is a name Name string `json:"name,omitempty"` }
AccountsListQuery has all query parameters for AccountsList
func (*AccountsListQuery) RawQuery ¶
func (a *AccountsListQuery) RawQuery() string
RawQuery creates a query string for AccountsListQuery
type Address ¶
type Address struct { // Country ISO 3166-1 alpha-2 country code, for example DE Country string `json:"country,omitempty"` // Locality The locality/city. For example, Mountain View. Locality string `json:"locality,omitempty"` // Region The region. For example, CA Region *string `json:"region,omitempty"` // PostalCode A postal code. For example, 9404 PostalCode string `json:"postal_code,omitempty"` // StreetAddress The street address. For example, 1600 Amphitheatre Pkwy. StreetAddress string `json:"street_address,omitempty"` // PostOfficeBoxNumber The post office box number for PO box addresses. PostOfficeBoxNumber *string `json:"post_office_box_number,omitempty"` }
Address A postal address. *(Sensitive Property)*
type AllowMemberJoiningRule ¶
type AllowMemberJoiningRule struct { // Type is a type Type string `json:"type,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account to which access to the // network service should be granted or denied. // ConsumingAccount string `json:"consuming_account,omitempty"` // CapacityMin Require an optional minimum capacity to join // the network service. CapacityMin *int `json:"capacity_min,omitempty"` // CapacityMax An optional rate limit which has precedence over // the capacity set in the network service config. CapacityMax *int `json:"capacity_max,omitempty"` // ID is a id ID string `json:"id,omitempty"` // NetworkService is a network_service NetworkService string `json:"network_service,omitempty"` }
AllowMemberJoiningRule A rule for members joining a private vlan
func (AllowMemberJoiningRule) PolymorphicType ¶
func (a AllowMemberJoiningRule) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type AllowMemberJoiningRulePatch ¶
type AllowMemberJoiningRulePatch struct { // Type is a type Type string `json:"type,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount *string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account to which access to the // network service should be granted or denied. // ConsumingAccount *string `json:"consuming_account,omitempty"` // CapacityMin Require an optional minimum capacity to join // the network service. CapacityMin *int `json:"capacity_min,omitempty"` // CapacityMax An optional rate limit which has precedence over // the capacity set in the network service config. CapacityMax *int `json:"capacity_max,omitempty"` }
AllowMemberJoiningRulePatch A vlan member joining rule update
func (AllowMemberJoiningRulePatch) PolymorphicType ¶
func (a AllowMemberJoiningRulePatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type AllowMemberJoiningRuleRequest ¶
type AllowMemberJoiningRuleRequest struct { // Type is a type Type string `json:"type,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account to which access to the // network service should be granted or denied. // ConsumingAccount string `json:"consuming_account,omitempty"` // CapacityMin Require an optional minimum capacity to join // the network service. CapacityMin *int `json:"capacity_min,omitempty"` // CapacityMax An optional rate limit which has precedence over // the capacity set in the network service config. CapacityMax *int `json:"capacity_max,omitempty"` // NetworkService is a network_service NetworkService string `json:"network_service,omitempty"` }
AllowMemberJoiningRuleRequest A new vlan member joining rule
func (AllowMemberJoiningRuleRequest) PolymorphicType ¶
func (a AllowMemberJoiningRuleRequest) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type AllowMemberJoiningRuleUpdate ¶
type AllowMemberJoiningRuleUpdate struct { // Type is a type Type string `json:"type,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account to which access to the // network service should be granted or denied. // ConsumingAccount string `json:"consuming_account,omitempty"` // CapacityMin Require an optional minimum capacity to join // the network service. CapacityMin *int `json:"capacity_min,omitempty"` // CapacityMax An optional rate limit which has precedence over // the capacity set in the network service config. CapacityMax *int `json:"capacity_max,omitempty"` }
AllowMemberJoiningRuleUpdate A vlan member joining rule update
func (AllowMemberJoiningRuleUpdate) PolymorphicType ¶
func (a AllowMemberJoiningRuleUpdate) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type AuthAPIKeySecret ¶
AuthAPIKeySecret will use the legacy authentication endpoint
type AuthToken ¶
type AuthToken struct { // AccessToken is a access_token AccessToken string `json:"access_token,omitempty"` // RefreshToken is a refresh_token RefreshToken string `json:"refresh_token,omitempty"` }
AuthToken AuthToken
type AuthTokenRequest ¶
type AuthTokenRequest struct { // APIKey is a api_key APIKey string `json:"api_key,omitempty"` // APISecret is a api_secret APISecret string `json:"api_secret,omitempty"` }
AuthTokenRequest AuthTokenRequest
type AuthenticationError ¶
type AuthenticationError struct {
ProblemResponse
}
AuthenticationError indicates that the authentication was not successful.
func AsErrAuthenticationFailed ¶
func AsErrAuthenticationFailed(err error) *AuthenticationError
AsErrAuthenticationFailed tries to convert the error into a AuthenticationError
type AuthenticationProvider ¶
type AuthenticationProvider interface {
// contains filtered or unexported methods
}
AuthenticationProvider is an interface for authentication
type BillingInformation ¶
type BillingInformation struct { // Name Name of the organisation receiving invoices. // Name string `json:"name,omitempty"` // Address is a address Address *Address `json:"address,omitempty"` // VatNumber Value-added tax number, required for // european reverse charge system. // VatNumber *string `json:"vat_number,omitempty"` }
BillingInformation Optional information required for issuing invoices. Only accounts with `billing_information` present can be used as a `billing_account`. *(Sensitive Property)*
type CancellationPolicy ¶
type CancellationPolicy struct { // DecommissionAt This field denotes the first possible cancellation // date of the service. DecommissionAt Date `json:"decommission_at,omitempty"` // ChargedUntil Your obligation to pay for the service will end on this date. // Typically `≥ decommission_at`. ChargedUntil Date `json:"charged_until,omitempty"` }
CancellationPolicy Cancellation Policy
type CancellationRequest ¶
type CancellationRequest struct { // DecommissionAt An optional date for scheduling the cancellation // and service decommissioning. DecommissionAt *Date `json:"decommission_at,omitempty"` }
CancellationRequest Service Cancellation Request
type Client ¶
Client is an IX-API http client
func (*Client) APIExtensionsList ¶
func (c *Client) APIExtensionsList( ctx context.Context, ) ([]*APIExtensions, error)
APIExtensionsList List provider extensions to the IX-API.
func (*Client) APIHealthRead ¶
APIHealthRead Get the IX-API service health status.
func (*Client) APIImplementationRead ¶
func (c *Client) APIImplementationRead( ctx context.Context, ) (*APIImplementation, error)
APIImplementationRead Get the API implementation details.
func (*Client) AccountsCreate ¶
AccountsCreate Create a new account.
func (*Client) AccountsDestroy ¶
AccountsDestroy Accounts can be deleted, when all services and configs are decommissioned or the account is not longer referenced e.g. as a `managing_account` or `billing_account`.
Deleting an account will cascade to `contacts` and `role-assignments`.
The request will immediately fail, if the above preconditions are not met.
func (*Client) AccountsList ¶
func (c *Client) AccountsList( ctx context.Context, qry ...*AccountsListQuery, ) ([]*Account, error)
AccountsList Retrieve a list of `Account`s.
This includes all accounts the currently authorized account is managing and the current account itself.
Also `discoverable` accounts will be included, however sensitive properties, like `address` or `external_ref` will either not be present or redacted.
func (*Client) AccountsPatch ¶
func (c *Client) AccountsPatch( ctx context.Context, id string, req *AccountPatch, ) (*Account, error)
AccountsPatch Update parts of an account.
func (*Client) AccountsRead ¶
AccountsRead Get a single account.
func (*Client) AccountsUpdate ¶
func (c *Client) AccountsUpdate( ctx context.Context, id string, req *AccountUpdate, ) (*Account, error)
AccountsUpdate Update the entire account.
func (*Client) AuthTokenCreate ¶
AuthTokenCreate Authenticate an API user identified by `api_key` and `api_secret`.
func (*Client) AuthTokenRefresh ¶
func (c *Client) AuthTokenRefresh( ctx context.Context, req *RefreshTokenRequest, ) (*AuthToken, error)
AuthTokenRefresh Reauthenticate the API user, issue a new `access_token` and `refresh_token` pair by providing the `refresh_token` in the request body.
func (*Client) Authenticate ¶
func (c *Client) Authenticate( ctx context.Context, auth AuthenticationProvider, ) error
Authenticate using a authentication provider
func (*Client) ConnectionsCancellationPolicy ¶
func (c *Client) ConnectionsCancellationPolicy( ctx context.Context, id string, qry ...*ConnectionsCancellationPolicyQuery, ) (*CancellationPolicy, error)
ConnectionsCancellationPolicy The cancellation-policy can be queried to answer the questions:
If I cancel my subscription, *when will it be technically decommissioned*? If I cancel my subscription, *until what date will I be charged*?
When the query parameter `decommision_at` is not provided it will provide the first possible cancellation date and charge period if cancelled at above date.
The granularity of the date field is a day, the start and end of which are to be interpreted by the IXP (some may use UTC, some may use their local time zone).
func (*Client) ConnectionsCreate ¶
func (c *Client) ConnectionsCreate( ctx context.Context, req *ConnectionRequest, ) (*Connection, error)
ConnectionsCreate Create a new `connection` and request ports allocation.
Two workflows for allocating ports is supported and dependent on the `cross_connect_initiator` property of the corresponding `product-offering`:
When the initiator is the `subscriber`, a Letter Of Authorization (LOA) can be downloaded from the `/connection/<id>/loa` resource. In case the `exchange` is the initiator, the LOA can be uploaded to this resource.
Creating a connection will also create PortReservations. See the `port_quantity` and `subscriber_side_demarcs` attributes for details.
Please refer to the internet exchange's api usage guide for implementation specific details.
func (*Client) ConnectionsDestroy ¶
func (c *Client) ConnectionsDestroy( ctx context.Context, id string, req *CancellationRequest, ) (*Connection, error)
ConnectionsDestroy Request decommissioning the connection.
The cancellation policy of the connection applies here and is independent from the policy of the network-service and network-service-config using the connection.
The connection will assume the state `decommission_requested`.
Associated `port-reservation` will be also marked for decommissining and ports will be deallocated.
The decommissioning request will *not* cascade to network services and configs.
func (*Client) ConnectionsList ¶
func (c *Client) ConnectionsList( ctx context.Context, qry ...*ConnectionsListQuery, ) ([]*Connection, error)
ConnectionsList List all `connection`s.
func (*Client) ConnectionsLoaDownload ¶
ConnectionsLoaDownload Download the *Letter Of Authorization* associated with the `connection`. In case of a *subscriber initiated cross-connect*, it will be provided by the exchange.
func (*Client) ConnectionsLoaUpload ¶
func (c *Client) ConnectionsLoaUpload( ctx context.Context, id string, data []byte, ) (Response, error)
ConnectionsLoaUpload Upload a *Letter Of Authorization* for this `connection`.
The LOA is valid for the entire connection and must include all ports.
func (*Client) ConnectionsPatch ¶
func (c *Client) ConnectionsPatch( ctx context.Context, id string, req *ConnectionPatch, ) (*Connection, error)
ConnectionsPatch Partially update a connection.
func (*Client) ConnectionsRead ¶
ConnectionsRead Read a `connection`.
func (*Client) ConnectionsUpdate ¶
func (c *Client) ConnectionsUpdate( ctx context.Context, id string, req *ConnectionUpdate, ) (*Connection, error)
ConnectionsUpdate Update a connection.
func (*Client) ContactsCreate ¶
ContactsCreate Create a new contact.
func (*Client) ContactsDestroy ¶
ContactsDestroy Remove a contact.
Please note, that a contact can only be removed if it is not longer in use in a network service or config through a role assignment.
func (*Client) ContactsList ¶
func (c *Client) ContactsList( ctx context.Context, qry ...*ContactsListQuery, ) ([]*Contact, error)
ContactsList List available contacts managed by the authorized account.
func (*Client) ContactsPatch ¶
func (c *Client) ContactsPatch( ctx context.Context, id string, req *ContactPatch, ) (*Contact, error)
ContactsPatch Update parts of a contact
func (*Client) ContactsRead ¶
ContactsRead Get a contact by it's id
func (*Client) ContactsUpdate ¶
func (c *Client) ContactsUpdate( ctx context.Context, id string, req *ContactUpdate, ) (*Contact, error)
ContactsUpdate Update a contact
func (*Client) DevicesList ¶
DevicesList List available devices
func (*Client) DevicesRead ¶
DevicesRead Get a specific device identified by id
func (*Client) FacilitiesList ¶
func (c *Client) FacilitiesList( ctx context.Context, qry ...*FacilitiesListQuery, ) ([]*Facility, error)
FacilitiesList Get a (filtered) list of `facilities`.
func (*Client) FacilitiesRead ¶
FacilitiesRead Retrieve a facility by id
func (*Client) IPsPatch ¶
func (c *Client) IPsPatch( ctx context.Context, id string, req *IPAddressPatch, ) (*IPAddress, error)
IPsPatch Update parts of an ip address.
As with the `PUT` opertaion, IP addresses, where you don't have update rights, will yield a `resource access denied` error when attempting an update.
If the ip address was allocated for you, you might not be able to change anything but the `fqdn`.
func (*Client) IPsUpdate ¶
func (c *Client) IPsUpdate( ctx context.Context, id string, req *IPAddressUpdate, ) (*IPAddress, error)
IPsUpdate Update an ip address object.
You can only update IP addresses within your current scope. Not all addresses you can read you can update.
If the ip address was allocated for you, you might not be able to change anything but the `fqdn`.
func (*Client) MacsCreate ¶
func (c *Client) MacsCreate( ctx context.Context, req *MacAddressRequest, ) (*MacAddress, error)
MacsCreate Register a mac address.
func (*Client) MacsDestroy ¶
MacsDestroy Remove a mac address.
func (*Client) MacsList ¶
func (c *Client) MacsList( ctx context.Context, qry ...*MacsListQuery, ) ([]*MacAddress, error)
MacsList List all mac addresses managed by the authorized customer.
func (*Client) MemberJoiningRulesCreate ¶
func (c *Client) MemberJoiningRulesCreate( ctx context.Context, req MemberJoiningRuleRequest, ) (MemberJoiningRule, error)
MemberJoiningRulesCreate Create a member joining rule
func (*Client) MemberJoiningRulesDestroy ¶
func (c *Client) MemberJoiningRulesDestroy( ctx context.Context, id string, ) (MemberJoiningRule, error)
MemberJoiningRulesDestroy Delete a joining rule
func (*Client) MemberJoiningRulesList ¶
func (c *Client) MemberJoiningRulesList( ctx context.Context, qry ...*MemberJoiningRulesListQuery, ) ([]MemberJoiningRule, error)
MemberJoiningRulesList Get a list of joining rules
func (*Client) MemberJoiningRulesPatch ¶
func (c *Client) MemberJoiningRulesPatch( ctx context.Context, id string, req MemberJoiningRulePatch, ) (MemberJoiningRule, error)
MemberJoiningRulesPatch Partially update a joining rule
func (*Client) MemberJoiningRulesRead ¶
func (c *Client) MemberJoiningRulesRead( ctx context.Context, id string, ) (MemberJoiningRule, error)
MemberJoiningRulesRead Get a single rule
func (*Client) MemberJoiningRulesUpdate ¶
func (c *Client) MemberJoiningRulesUpdate( ctx context.Context, id string, req MemberJoiningRuleUpdate, ) (MemberJoiningRule, error)
MemberJoiningRulesUpdate Update a joining rule
func (*Client) MetroAreaNetworksList ¶
func (c *Client) MetroAreaNetworksList( ctx context.Context, qry ...*MetroAreaNetworksListQuery, ) ([]*MetroAreaNetwork, error)
MetroAreaNetworksList List all MetroAreaNetworks
func (*Client) MetroAreaNetworksRead ¶
func (c *Client) MetroAreaNetworksRead( ctx context.Context, id string, ) (*MetroAreaNetwork, error)
MetroAreaNetworksRead Retrieve a MetroAreaNetwork
func (*Client) MetroAreasList ¶
func (c *Client) MetroAreasList( ctx context.Context, qry ...*MetroAreasListQuery, ) ([]*MetroArea, error)
MetroAreasList List all MetroAreas
func (*Client) MetroAreasRead ¶
MetroAreasRead Get a single MetroArea
func (*Client) NetworkFeatureConfigsCreate ¶
func (c *Client) NetworkFeatureConfigsCreate( ctx context.Context, req NetworkFeatureConfigRequest, ) (NetworkFeatureConfig, error)
NetworkFeatureConfigsCreate Create a configuration for a `NetworkFeature` defined in the `NetworkFeature`s collection.
func (*Client) NetworkFeatureConfigsDestroy ¶
func (c *Client) NetworkFeatureConfigsDestroy( ctx context.Context, id string, ) (NetworkFeatureConfig, error)
NetworkFeatureConfigsDestroy Remove a network feature config.
The network feature config will be marked as `decommission_requested`. Decommissioning a network feature config will not cascade to related services or service configs.
func (*Client) NetworkFeatureConfigsList ¶
func (c *Client) NetworkFeatureConfigsList( ctx context.Context, qry ...*NetworkFeatureConfigsListQuery, ) ([]NetworkFeatureConfig, error)
NetworkFeatureConfigsList Get all network feature configs.
func (*Client) NetworkFeatureConfigsPatch ¶
func (c *Client) NetworkFeatureConfigsPatch( ctx context.Context, id string, req NetworkFeatureConfigPatch, ) (NetworkFeatureConfig, error)
NetworkFeatureConfigsPatch Update parts of a network feature configuration
func (*Client) NetworkFeatureConfigsRead ¶
func (c *Client) NetworkFeatureConfigsRead( ctx context.Context, id string, ) (NetworkFeatureConfig, error)
NetworkFeatureConfigsRead Get a single network feature config.
func (*Client) NetworkFeatureConfigsUpdate ¶
func (c *Client) NetworkFeatureConfigsUpdate( ctx context.Context, id string, req NetworkFeatureConfigUpdate, ) (NetworkFeatureConfig, error)
NetworkFeatureConfigsUpdate Update a network feature configuration
func (*Client) NetworkFeaturesList ¶
func (c *Client) NetworkFeaturesList( ctx context.Context, qry ...*NetworkFeaturesListQuery, ) ([]NetworkFeature, error)
NetworkFeaturesList List available network features.
func (*Client) NetworkFeaturesRead ¶
NetworkFeaturesRead Get a single network feature by it's id.
func (*Client) NetworkServiceCancellationPolicyRead ¶
func (c *Client) NetworkServiceCancellationPolicyRead( ctx context.Context, id string, qry ...*NetworkServiceCancellationPolicyReadQuery, ) (*CancellationPolicy, error)
NetworkServiceCancellationPolicyRead The cancellation-policy can be queried to answer the questions:
If I cancel my service, *when will it be technically decommissioned*? If I cancel my service, *until what date will I be charged*?
When the query parameter `decommision_at` is not provided it will provide the first possible cancellation date and charge period if cancelled at above date.
The granularity of the date field is a day, the start and end of which are to be interpreted by the IXP (some may use UTC, some may use their local time zone).
func (*Client) NetworkServiceChangeRequestCreate ¶
func (c *Client) NetworkServiceChangeRequestCreate( ctx context.Context, id string, req *NetworkServiceChangeRequest, ) (*NetworkServiceChangeRequest, error)
NetworkServiceChangeRequestCreate Request a change to the network service.
The B-side participant in a peer-to-peer network service (`p2p_vc`) can issue a change request, expressing a desired change in the capacity.
The change is accepted when the A-side has configured the network service and config with the new bandwidth. This is done using the `network_service_update`, `network_service_partial_update`, `network_service_config_update` or `network_service_config_partial_update` operations by the A-side.
These changes can sometimes require a change of the product offering. The product offering may only differ in bandwidth.
The network service will change its state from `production` into `production_change_pending`.
A change can by rejected (by the A-side) or retracted (by the B-side) using the `network_service_change_request_destroy` operation.
Only one change request may be issued at a time.
A change request by the A-side is not a valid request and will be rejected.
func (*Client) NetworkServiceChangeRequestDestroy ¶
func (c *Client) NetworkServiceChangeRequestDestroy( ctx context.Context, id string, ) (*NetworkServiceChangeRequest, error)
NetworkServiceChangeRequestDestroy Retract or reject a change to the network service.
func (*Client) NetworkServiceChangeRequestRead ¶
func (c *Client) NetworkServiceChangeRequestRead( ctx context.Context, id string, ) (*NetworkServiceChangeRequest, error)
NetworkServiceChangeRequestRead Get the change request.
func (*Client) NetworkServiceConfigCancellationPolicyRead ¶
func (c *Client) NetworkServiceConfigCancellationPolicyRead( ctx context.Context, id string, qry ...*NetworkServiceConfigCancellationPolicyReadQuery, ) (*CancellationPolicy, error)
NetworkServiceConfigCancellationPolicyRead The cancellation-policy can be queried to answer the questions:
If I cancel my subscription, *when will it be technically decommissioned*? If I cancel my subscription, *until what date will I be charged*?
When the query parameter `decommision_at` is not provided it will provide the first possible cancellation date and charge period if cancelled at above date.
The granularity of the date field is a day, the start and end of which are to be interpreted by the IXP (some may use UTC, some may use their local time zone).
func (*Client) NetworkServiceConfigsCreate ¶
func (c *Client) NetworkServiceConfigsCreate( ctx context.Context, req NetworkServiceConfigRequest, ) (NetworkServiceConfig, error)
NetworkServiceConfigsCreate Create a `network-service-config`.
func (*Client) NetworkServiceConfigsDestroy ¶
func (c *Client) NetworkServiceConfigsDestroy( ctx context.Context, id string, req *CancellationRequest, ) (NetworkServiceConfig, error)
NetworkServiceConfigsDestroy Request decommissioning the network service configuration.
The network service config will assume the state `decommission_requested`. This will cascade to related resources like `network-feature-configs`.
func (*Client) NetworkServiceConfigsList ¶
func (c *Client) NetworkServiceConfigsList( ctx context.Context, qry ...*NetworkServiceConfigsListQuery, ) ([]NetworkServiceConfig, error)
NetworkServiceConfigsList Get all `network-service-config`s.
func (*Client) NetworkServiceConfigsPatch ¶
func (c *Client) NetworkServiceConfigsPatch( ctx context.Context, id string, req NetworkServiceConfigPatch, ) (NetworkServiceConfig, error)
NetworkServiceConfigsPatch Update parts of an exisiting `network-service-config`.
func (*Client) NetworkServiceConfigsRead ¶
func (c *Client) NetworkServiceConfigsRead( ctx context.Context, id string, ) (NetworkServiceConfig, error)
NetworkServiceConfigsRead Get a `network-service-config`
func (*Client) NetworkServiceConfigsUpdate ¶
func (c *Client) NetworkServiceConfigsUpdate( ctx context.Context, id string, req NetworkServiceConfigUpdate, ) (NetworkServiceConfig, error)
NetworkServiceConfigsUpdate Update an exisiting `network-service-config`
func (*Client) NetworkServicesCreate ¶
func (c *Client) NetworkServicesCreate( ctx context.Context, req NetworkServiceRequest, ) (NetworkService, error)
NetworkServicesCreate Create a new network service
func (*Client) NetworkServicesDestroy ¶
func (c *Client) NetworkServicesDestroy( ctx context.Context, id string, req *CancellationRequest, ) (NetworkService, error)
NetworkServicesDestroy Request decomissioning of the network service.
The network service will enter the state of `decommission_requested`. The request will cascade to related network service and feature configs.
An *optional request body* can be provided to request a specific service termination date.
If no date is given in the request body, it is assumed to be the earliest possible date.
Possible values for `decommission_at` can be queried through the `network_service_cancellation_policy_read` operation.
The response will contain the dates on which the changes will be effected.
func (*Client) NetworkServicesList ¶
func (c *Client) NetworkServicesList( ctx context.Context, qry ...*NetworkServicesListQuery, ) ([]NetworkService, error)
NetworkServicesList List available `NetworkService`s.
func (*Client) NetworkServicesPatch ¶
func (c *Client) NetworkServicesPatch( ctx context.Context, id string, req NetworkServicePatch, ) (NetworkService, error)
NetworkServicesPatch Partially update a network service
func (*Client) NetworkServicesRead ¶
NetworkServicesRead Get a specific `network-service` by id.
func (*Client) NetworkServicesUpdate ¶
func (c *Client) NetworkServicesUpdate( ctx context.Context, id string, req NetworkServiceUpdate, ) (NetworkService, error)
NetworkServicesUpdate Update a network service
func (*Client) PopsList ¶
func (c *Client) PopsList( ctx context.Context, qry ...*PopsListQuery, ) ([]*PointOfPresence, error)
PopsList List all PoPs
func (*Client) PortReservationCancellationPolicy ¶
func (c *Client) PortReservationCancellationPolicy( ctx context.Context, id string, qry ...*PortReservationCancellationPolicyQuery, ) (*CancellationPolicy, error)
PortReservationCancellationPolicy The cancellation-policy can be queried to answer the questions:
If I cancel my subscription, *when will it be technically decommissioned*? If I cancel my subscription, *until what date will I be charged*?
When the query parameter `decommision_at` is not provided it will provide the first possible cancellation date and charge period if cancelled at above date.
The granularity of the date field is a day, the start and end of which are to be interpreted by the IXP (some may use UTC, some may use their local time zone).
func (*Client) PortReservationsCreate ¶
func (c *Client) PortReservationsCreate( ctx context.Context, req *PortReservationRequest, ) (*PortReservation, error)
PortReservationsCreate Create a new `PortReservation`.
Two workflows for allocating ports is supported and dependent on the `cross_connect_initiator` property of the corresponding `product-offering`:
Individual LOAs can be uploaded and downloaded for each PortAllocation using the endpoint `/port-reservations/{id}/loa`.
Please refer to the internet exchange's api usage guide for implementation specific details.
func (*Client) PortReservationsDestroy ¶
func (c *Client) PortReservationsDestroy( ctx context.Context, id string, req *CancellationRequest, ) (*PortReservation, error)
PortReservationsDestroy Request decommissioning the port-reservation. The associated `port` will be deallocated and removed from the `connection`.
func (*Client) PortReservationsList ¶
func (c *Client) PortReservationsList( ctx context.Context, qry ...*PortReservationsListQuery, ) ([]*PortReservation, error)
PortReservationsList List all port reservations.
func (*Client) PortReservationsLoaDownload ¶
PortReservationsLoaDownload Download the *Letter Of Authorization* associated with the port-reservation.
In case of a *subscriber initiated cross-connect*, it will be provided by the exchange.
func (*Client) PortReservationsLoaUpload ¶
func (c *Client) PortReservationsLoaUpload( ctx context.Context, id string, data []byte, ) (Response, error)
PortReservationsLoaUpload Upload a *Letter Of Authorization* for this `PortReservation`.
func (*Client) PortReservationsPatch ¶
func (c *Client) PortReservationsPatch( ctx context.Context, id string, req *PortReservationPatch, ) (*PortReservation, error)
PortReservationsPatch Partially update a port reservation.
func (*Client) PortReservationsRead ¶
PortReservationsRead Retrieve a `PortReservation`.
func (*Client) PortReservationsUpdate ¶
func (c *Client) PortReservationsUpdate( ctx context.Context, id string, req *PortReservationUpdate, ) (*PortReservation, error)
PortReservationsUpdate Update a port reservation.
func (*Client) ProductOfferingsList ¶
func (c *Client) ProductOfferingsList( ctx context.Context, qry ...*ProductOfferingsListQuery, ) ([]ProductOffering, error)
ProductOfferingsList List all (filtered) products-offerings available on the platform
func (*Client) ProductOfferingsRead ¶
ProductOfferingsRead Get a single products-offering by id.
func (*Client) RoleAssignmentsCreate ¶
func (c *Client) RoleAssignmentsCreate( ctx context.Context, req *RoleAssignmentRequest, ) (*RoleAssignment, error)
RoleAssignmentsCreate Assign a `Role` to a `Contact`.
The contact needs to have all fields filled, which the role requires. If this is not the case a `400` `UnableToFulfill` will be returned.
func (*Client) RoleAssignmentsDestroy ¶
RoleAssignmentsDestroy Remove a role assignment from a contact.
If the contact is still in use with a given role required, this will yield an `UnableToFulfill` error.
func (*Client) RoleAssignmentsList ¶
func (c *Client) RoleAssignmentsList( ctx context.Context, qry ...*RoleAssignmentsListQuery, ) ([]*RoleAssignment, error)
RoleAssignmentsList List all role assignments for a contact.
func (*Client) RoleAssignmentsRead ¶
RoleAssignmentsRead Get a role assignment for a contact.
type CloudNetworkProductOffering ¶
type CloudNetworkProductOffering struct { // Type is a type Type string `json:"type,omitempty"` // ID is a id ID string `json:"id,omitempty"` // Name Name of the product Name string `json:"name,omitempty"` // DisplayName is a display_name DisplayName string `json:"display_name,omitempty"` // ExchangeLogo An URI referencing the logo of the internet exchange. // ExchangeLogo *string `json:"exchange_logo,omitempty"` // ServiceProviderLogo An URI referencing the logo of the service provider. // ServiceProviderLogo *string `json:"service_provider_logo,omitempty"` // ProductLogo An URI referencing a logo for the product offered. // ProductLogo *string `json:"product_logo,omitempty"` // ResourceType The resource type refers to an ix-api resource. // ResourceType string `json:"resource_type,omitempty"` // HandoverMetroAreaNetwork Id of the `MetroAreaNetwork`. The service will be accessed // through the handover metro area network. // // In case of a `p2p_vc`, the `handover_metro_area_network` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroAreaNetwork string `json:"handover_metro_area_network,omitempty"` // HandoverMetroArea Id of the `MetroArea`. The network service will be // accessed from this metro area. // // In case of a `p2p_vc`, the `handover_metro_area` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroArea string `json:"handover_metro_area,omitempty"` // PhysicalPortSpeed If the service is dependent on the speed of // the physical port this field denotes the speed. PhysicalPortSpeed int `json:"physical_port_speed,omitempty"` // ServiceProvider The name of the provider providing the service. // ServiceProvider string `json:"service_provider,omitempty"` // DowngradeAllowed Indicates if the service can be migrated to // a lower bandwidth. DowngradeAllowed bool `json:"downgrade_allowed,omitempty"` // UpgradeAllowed Indicates if the service can be migrated to // a higher bandwidth. UpgradeAllowed bool `json:"upgrade_allowed,omitempty"` // OrderableNotBefore This product offering becomes available for ordering after // this point in time. OrderableNotBefore *time.Time `json:"orderable_not_before,omitempty"` // OrderableNotAfter This product offering will become unavailable for ordering after // this point in time. OrderableNotAfter *time.Time `json:"orderable_not_after,omitempty"` // ContractTerms The contract terms informally describe the contract period and // renewals. // ContractTerms *string `json:"contract_terms,omitempty"` // NoticePeriod The notice period informally states constraints // which define when the client needs to inform the // IXP in order to prevent renewal of the contract. // NoticePeriod *string `json:"notice_period,omitempty"` // ProviderVLANs The `NetworkService` provides `single` or `multi`ple vlans. ProviderVLANs string `json:"provider_vlans,omitempty"` // ServiceMetroAreaNetwork Id of the `MetroAreaNetwork`. // The service is directly provided on the metro area network. // // In case of a `p2p_vc`, the `service_metro_area_network` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroAreaNetwork string `json:"service_metro_area_network,omitempty"` // ServiceMetroArea Id of the `MetroArea`. The service is delivered // in this metro area. // // In case of a `p2p_vc`, the `service_metro_area` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroArea string `json:"service_metro_area,omitempty"` // BandwidthMin When configuring access to the network service, at least // this `capacity` must be provided. BandwidthMin int `json:"bandwidth_min,omitempty"` // BandwidthMax When not `null`, this value enforces a mandatory // rate limit for all network service configs. BandwidthMax int `json:"bandwidth_max,omitempty"` // ServiceProviderRegion The service provider offers the network service for a // specific region. // ServiceProviderRegion string `json:"service_provider_region,omitempty"` // ServiceProviderPop The datacenter id of the partner NNI to the service provider. // It supposed to be used when identifying a location via // the cloud provider's APIs. // ServiceProviderPop string `json:"service_provider_pop,omitempty"` // ServiceProviderPopName The datacenter description of the partner NNI to the service provider. // ServiceProviderPopName *string `json:"service_provider_pop_name,omitempty"` // ServiceProviderWorkflow When the workflow is `provider_first` the subscriber creates // a circuit with the cloud provider and provides a `cloud_key` for filtering // the product-offerings. // // If the workflow is `exchange_first` the IX will create // the cloud circuit on the provider side. // ServiceProviderWorkflow string `json:"service_provider_workflow,omitempty"` // DeliveryMethod The exchange delivers the service over a `shared` or `dedicated` NNI. DeliveryMethod string `json:"delivery_method,omitempty"` // Diversity The service can be delivered over multiple handovers from // the exchange to the `service_provider`. // The `diversity` denotes the number of handovers between the // exchange and the service provider. A value of two signals a // redundant service. // // Only one network service configuration for each `handover` and // `cloud_vlan` can be created. Diversity int `json:"diversity,omitempty"` }
CloudNetworkProductOffering Cloud Network Product Offering
func (CloudNetworkProductOffering) PolymorphicType ¶
func (c CloudNetworkProductOffering) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type CloudNetworkProductOfferingPatch ¶
type CloudNetworkProductOfferingPatch struct { // Type is a type Type string `json:"type,omitempty"` // ID is a id ID *string `json:"id,omitempty"` // Name Name of the product Name *string `json:"name,omitempty"` // DisplayName is a display_name DisplayName *string `json:"display_name,omitempty"` // ExchangeLogo An URI referencing the logo of the internet exchange. // ExchangeLogo *string `json:"exchange_logo,omitempty"` // ServiceProviderLogo An URI referencing the logo of the service provider. // ServiceProviderLogo *string `json:"service_provider_logo,omitempty"` // ProductLogo An URI referencing a logo for the product offered. // ProductLogo *string `json:"product_logo,omitempty"` // ResourceType The resource type refers to an ix-api resource. // ResourceType *string `json:"resource_type,omitempty"` // HandoverMetroAreaNetwork Id of the `MetroAreaNetwork`. The service will be accessed // through the handover metro area network. // // In case of a `p2p_vc`, the `handover_metro_area_network` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroAreaNetwork *string `json:"handover_metro_area_network,omitempty"` // HandoverMetroArea Id of the `MetroArea`. The network service will be // accessed from this metro area. // // In case of a `p2p_vc`, the `handover_metro_area` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroArea *string `json:"handover_metro_area,omitempty"` // PhysicalPortSpeed If the service is dependent on the speed of // the physical port this field denotes the speed. PhysicalPortSpeed *int `json:"physical_port_speed,omitempty"` // ServiceProvider The name of the provider providing the service. // ServiceProvider *string `json:"service_provider,omitempty"` // DowngradeAllowed Indicates if the service can be migrated to // a lower bandwidth. DowngradeAllowed *bool `json:"downgrade_allowed,omitempty"` // UpgradeAllowed Indicates if the service can be migrated to // a higher bandwidth. UpgradeAllowed *bool `json:"upgrade_allowed,omitempty"` // OrderableNotBefore This product offering becomes available for ordering after // this point in time. OrderableNotBefore *time.Time `json:"orderable_not_before,omitempty"` // OrderableNotAfter This product offering will become unavailable for ordering after // this point in time. OrderableNotAfter *time.Time `json:"orderable_not_after,omitempty"` // ContractTerms The contract terms informally describe the contract period and // renewals. // ContractTerms *string `json:"contract_terms,omitempty"` // NoticePeriod The notice period informally states constraints // which define when the client needs to inform the // IXP in order to prevent renewal of the contract. // NoticePeriod *string `json:"notice_period,omitempty"` // ProviderVLANs The `NetworkService` provides `single` or `multi`ple vlans. ProviderVLANs *string `json:"provider_vlans,omitempty"` // ServiceMetroAreaNetwork Id of the `MetroAreaNetwork`. // The service is directly provided on the metro area network. // // In case of a `p2p_vc`, the `service_metro_area_network` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroAreaNetwork *string `json:"service_metro_area_network,omitempty"` // ServiceMetroArea Id of the `MetroArea`. The service is delivered // in this metro area. // // In case of a `p2p_vc`, the `service_metro_area` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroArea *string `json:"service_metro_area,omitempty"` // BandwidthMin When configuring access to the network service, at least // this `capacity` must be provided. BandwidthMin *int `json:"bandwidth_min,omitempty"` // BandwidthMax When not `null`, this value enforces a mandatory // rate limit for all network service configs. BandwidthMax *int `json:"bandwidth_max,omitempty"` // ServiceProviderRegion The service provider offers the network service for a // specific region. // ServiceProviderRegion *string `json:"service_provider_region,omitempty"` // ServiceProviderPop The datacenter id of the partner NNI to the service provider. // It supposed to be used when identifying a location via // the cloud provider's APIs. // ServiceProviderPop *string `json:"service_provider_pop,omitempty"` // ServiceProviderPopName The datacenter description of the partner NNI to the service provider. // ServiceProviderPopName *string `json:"service_provider_pop_name,omitempty"` // ServiceProviderWorkflow When the workflow is `provider_first` the subscriber creates // a circuit with the cloud provider and provides a `cloud_key` for filtering // the product-offerings. // // If the workflow is `exchange_first` the IX will create // the cloud circuit on the provider side. // ServiceProviderWorkflow *string `json:"service_provider_workflow,omitempty"` // DeliveryMethod The exchange delivers the service over a `shared` or `dedicated` NNI. DeliveryMethod *string `json:"delivery_method,omitempty"` // Diversity The service can be delivered over multiple handovers from // the exchange to the `service_provider`. // The `diversity` denotes the number of handovers between the // exchange and the service provider. A value of two signals a // redundant service. // // Only one network service configuration for each `handover` and // `cloud_vlan` can be created. Diversity *int `json:"diversity,omitempty"` }
CloudNetworkProductOfferingPatch Cloud Network Product Offering
func (CloudNetworkProductOfferingPatch) PolymorphicType ¶
func (c CloudNetworkProductOfferingPatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type CloudNetworkService ¶
type CloudNetworkService struct { // Type is a type Type string `json:"type,omitempty"` // State is a state State string `json:"state,omitempty"` // Status is a status Status []*Status `json:"status,omitempty"` // ID is a id ID string `json:"id,omitempty"` // NscRequiredContactRoles The configuration will require at least one of each of the // specified roles assigned to contacts. // // The `RoleAssignment` is associated through the // `role_assignments` list property of the network service configuration. NscRequiredContactRoles []string `json:"nsc_required_contact_roles,omitempty"` // ProductOffering is a product_offering ProductOffering string `json:"product_offering,omitempty"` // DecommissionAt The service will be decommissioned on this date. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. DecommissionAt *Date `json:"decommission_at,omitempty"` // ChargedUntil The service continues incurring charges until this date. // Typically `≥ decommission_at`. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. // // *(Sensitive Property)* ChargedUntil *Date `json:"charged_until,omitempty"` // CurrentBillingStartDate Your obligation to pay for the service will start on this date. // // However, this date may change after an upgrade and not reflect // the inital start date of the service. // // *(Sensitive Property)* CurrentBillingStartDate *Date `json:"current_billing_start_date,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // Capacity The capacity of the service in Mbps. When null, // the maximum capacity will be used. Capacity *int `json:"capacity,omitempty"` // Diversity Same value as the corresponding `ProductOffering`. // // The service can be delivered over multiple handovers from // the exchange to the `service_provider`. // // The `diversity` denotes the number of handovers between the // exchange and the service provider. A value of two signals a // redundant service. // // Only one network service configuration for each `handover` and // `cloud_vlan` can be created. Diversity int `json:"diversity,omitempty"` // ProviderRef For a cloud network service with the exchange first // workflow, the `provider_ref` will be a reference // to a resource of the cloud provider. (E.g. the UUID of // a virtual circuit.) // // The `provider_ref` is managed by the exchange and its // meaning may vary between different cloud services. // ProviderRef string `json:"provider_ref,omitempty"` // CloudKey The cloud key is used to specify to which user or // existing circuit of a cloud provider this `network-service` // should be provisioned. // // For example, for a provider like *AWS*, this would be the // *account number* (Example: `123456789876`), or for a provider // like Azure, this would be the service key // (Example: `acl9edcf-f11c-4681-9c7b-6d16b2973997`) CloudKey string `json:"cloud_key,omitempty"` }
CloudNetworkService Cloud Network Service
func (CloudNetworkService) PolymorphicType ¶
func (c CloudNetworkService) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type CloudNetworkServiceConfig ¶
type CloudNetworkServiceConfig struct { // Type is a type Type string `json:"type,omitempty"` // State is a state State string `json:"state,omitempty"` // Status is a status Status []*Status `json:"status,omitempty"` // DecommissionAt The service will be decommissioned on this date. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. DecommissionAt *Date `json:"decommission_at,omitempty"` // ChargedUntil The service continues incurring charges until this date. // Typically `≥ decommission_at`. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. // // *(Sensitive Property)* ChargedUntil *Date `json:"charged_until,omitempty"` // CurrentBillingStartDate Your obligation to pay for the service will start on this date. // // However, this date may change after an upgrade and not reflect // the inital start date of the service. // // *(Sensitive Property)* CurrentBillingStartDate *Date `json:"current_billing_start_date,omitempty"` // ID is a id ID string `json:"id,omitempty"` // NetworkService The id of the configured network service. NetworkService string `json:"network_service,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // VLANConfig is a polymorphic vlan configuration VLANConfig VLANConfig `tf:"vlan_config" json:"-"` // VLANConfigRaw contains the vlan config response data VLANConfigRaw json.RawMessage `tf:"-" json:"vlan_config,omitempty"` // Handover The handover enumerates the connection and is // required for checking diversity constraints. // // It must be within `1 <= x <= network_service.diversity`. // Handover int `json:"handover,omitempty"` // CloudVLAN If the `provider_vlans` property of the `ProductOffering` is // `multi`, a numeric value refers to a specific vlan on the service // provider side. // // Otherwise, if set to `null`, it refers to all unmatched // vlan ids on the service provider side. (All vlan ids from the // service provider side are presented as tags within any vlans specified // in `vlan_config`.) // // If the `provider_vlans` property of the `ProductOffering` is `single`, // the `cloud_vlan` MUST be `null` or MUST NOT be provided. CloudVLAN int `json:"cloud_vlan,omitempty"` }
CloudNetworkServiceConfig Cloud Network Service Config
func (CloudNetworkServiceConfig) PolymorphicType ¶
func (c CloudNetworkServiceConfig) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type CloudNetworkServiceConfigPatch ¶
type CloudNetworkServiceConfigPatch struct { // Type is a type Type string `json:"type,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount *string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount *string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // VLANConfig is a vlan_config VLANConfig VLANConfig `json:"vlan_config,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount *string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection *string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // Handover The handover enumerates the connection and is // required for checking diversity constraints. // // It must be within `1 <= x <= network_service.diversity`. // Handover *int `json:"handover,omitempty"` // CloudVLAN If the `provider_vlans` property of the `ProductOffering` is // `multi`, a numeric value refers to a specific vlan on the service // provider side. // // Otherwise, if set to `null`, it refers to all unmatched // vlan ids on the service provider side. (All vlan ids from the // service provider side are presented as tags within any vlans specified // in `vlan_config`.) // // If the `provider_vlans` property of the `ProductOffering` is `single`, // the `cloud_vlan` MUST be `null` or MUST NOT be provided. CloudVLAN *int `json:"cloud_vlan,omitempty"` }
CloudNetworkServiceConfigPatch Cloud Network Service Config Update
func (CloudNetworkServiceConfigPatch) PolymorphicType ¶
func (c CloudNetworkServiceConfigPatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type CloudNetworkServiceConfigRequest ¶
type CloudNetworkServiceConfigRequest struct { // Type is a type Type string `json:"type,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // NetworkService The id of the `NetworkService` to configure. NetworkService string `json:"network_service,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // VLANConfig is a vlan_config VLANConfig VLANConfig `json:"vlan_config,omitempty"` // Handover The handover enumerates the connection and is // required for checking diversity constraints. // // It must be within `1 <= x <= network_service.diversity`. // Handover int `json:"handover,omitempty"` // CloudVLAN If the `provider_vlans` property of the `ProductOffering` is // `multi`, a numeric value refers to a specific vlan on the service // provider side. // // Otherwise, if set to `null`, it refers to all unmatched // vlan ids on the service provider side. (All vlan ids from the // service provider side are presented as tags within any vlans specified // in `vlan_config`.) // // If the `provider_vlans` property of the `ProductOffering` is `single`, // the `cloud_vlan` MUST be `null` or MUST NOT be provided. CloudVLAN int `json:"cloud_vlan,omitempty"` }
CloudNetworkServiceConfigRequest Cloud Network Service Config Request
func (CloudNetworkServiceConfigRequest) PolymorphicType ¶
func (c CloudNetworkServiceConfigRequest) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type CloudNetworkServiceConfigUpdate ¶
type CloudNetworkServiceConfigUpdate struct { // Type is a type Type string `json:"type,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // VLANConfig is a vlan_config VLANConfig VLANConfig `json:"vlan_config,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // Handover The handover enumerates the connection and is // required for checking diversity constraints. // // It must be within `1 <= x <= network_service.diversity`. // Handover int `json:"handover,omitempty"` // CloudVLAN If the `provider_vlans` property of the `ProductOffering` is // `multi`, a numeric value refers to a specific vlan on the service // provider side. // // Otherwise, if set to `null`, it refers to all unmatched // vlan ids on the service provider side. (All vlan ids from the // service provider side are presented as tags within any vlans specified // in `vlan_config`.) // // If the `provider_vlans` property of the `ProductOffering` is `single`, // the `cloud_vlan` MUST be `null` or MUST NOT be provided. CloudVLAN int `json:"cloud_vlan,omitempty"` }
CloudNetworkServiceConfigUpdate Cloud Network Service Config Update
func (CloudNetworkServiceConfigUpdate) PolymorphicType ¶
func (c CloudNetworkServiceConfigUpdate) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type CloudNetworkServicePatch ¶
type CloudNetworkServicePatch struct { // Type is a type Type string `json:"type,omitempty"` // ProductOffering is a product_offering ProductOffering *string `json:"product_offering,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount *string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount *string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount *string `json:"billing_account,omitempty"` // Capacity The capacity of the service in Mbps. When null, // the maximum capacity will be used. Capacity *int `json:"capacity,omitempty"` // CloudKey The cloud key is used to specify to which user or // existing circuit of a cloud provider this `network-service` // should be provisioned. // // For example, for a provider like *AWS*, this would be the // *account number* (Example: `123456789876`), or for a provider // like Azure, this would be the service key // (Example: `acl9edcf-f11c-4681-9c7b-6d16b2973997`) // // **Please note: *Any update to this field may be rejected if the // service has successfully been provisioned*.** CloudKey *string `json:"cloud_key,omitempty"` }
CloudNetworkServicePatch Cloud Network Service Update
func (CloudNetworkServicePatch) PolymorphicType ¶
func (c CloudNetworkServicePatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type CloudNetworkServiceRequest ¶
type CloudNetworkServiceRequest struct { // Type is a type Type string `json:"type,omitempty"` // ProductOffering is a product_offering ProductOffering string `json:"product_offering,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // Capacity The capacity of the service in Mbps. When null, // the maximum capacity will be used. Capacity *int `json:"capacity,omitempty"` // CloudKey The cloud key is used to specify to which user or // existing circuit of a cloud provider this `network-service` // should be provisioned. // // For example, for a provider like *AWS*, this would be the // *account number* (Example: `123456789876`), or for a provider // like Azure, this would be the service key // (Example: `acl9edcf-f11c-4681-9c7b-6d16b2973997`) CloudKey string `json:"cloud_key,omitempty"` }
CloudNetworkServiceRequest Cloud Network Service Request
func (CloudNetworkServiceRequest) PolymorphicType ¶
func (c CloudNetworkServiceRequest) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type CloudNetworkServiceUpdate ¶
type CloudNetworkServiceUpdate struct { // Type is a type Type string `json:"type,omitempty"` // ProductOffering is a product_offering ProductOffering string `json:"product_offering,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // Capacity The capacity of the service in Mbps. When null, // the maximum capacity will be used. Capacity *int `json:"capacity,omitempty"` // CloudKey The cloud key is used to specify to which user or // existing circuit of a cloud provider this `network-service` // should be provisioned. // // For example, for a provider like *AWS*, this would be the // *account number* (Example: `123456789876`), or for a provider // like Azure, this would be the service key // (Example: `acl9edcf-f11c-4681-9c7b-6d16b2973997`) // // **Please note: *Any update to this field may be rejected if the // service has successfully been provisioned*.** CloudKey string `json:"cloud_key,omitempty"` }
CloudNetworkServiceUpdate Cloud Network Service Update
func (CloudNetworkServiceUpdate) PolymorphicType ¶
func (c CloudNetworkServiceUpdate) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type Conflict ¶
type Conflict struct { // ResourceType The resource type refers to an ix-api resource. // ResourceType string `json:"resource_type,omitempty"` // ResourceID The id of the resource which has a conflict with the // request operation on the current resource. // ResourceID string `json:"resource_id,omitempty"` // ResourceProperty Indicates the property where the resource is in use. // ResourceProperty string `json:"resource_property,omitempty"` // RemoteResourceType The type of the conflicting resource. // RemoteResourceType string `json:"remote_resource_type,omitempty"` // RemoteResourceID The id of the conflicting resource. This is in most // cases the id of the current resource. // RemoteResourceID string `json:"remote_resource_id,omitempty"` }
Conflict A conflict is preventing success
type Connection ¶
type Connection struct { // State is a state State string `json:"state,omitempty"` // Status is a status Status []*Status `json:"status,omitempty"` // DecommissionAt The service will be decommissioned on this date. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. DecommissionAt *Date `json:"decommission_at,omitempty"` // ChargedUntil The service continues incurring charges until this date. // Typically `≥ decommission_at`. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. // // *(Sensitive Property)* ChargedUntil *Date `json:"charged_until,omitempty"` // CurrentBillingStartDate Your obligation to pay for the service will start on this date. // // However, this date may change after an upgrade and not reflect // the inital start date of the service. // // *(Sensitive Property)* CurrentBillingStartDate *Date `json:"current_billing_start_date,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Mode Sets the mode of the connection. The mode can be: // // - `lag_lacp`: connection is build as a LAG with LACP enabled // - `lag_static`: connection is build as LAG with static configuration // - `flex_ethernet`: connect is build as a FlexEthernet channel // - `standalone`: only one port is allowed in this connection without // any bundling. // Mode string `json:"mode,omitempty"` // LacpTimeout This sets the LACP Timeout mode. Both ends of the connections need // to be configured the same. // LacpTimeout *string `json:"lacp_timeout,omitempty"` // ProductOffering The product offering must match the type `connection`. ProductOffering string `json:"product_offering,omitempty"` // ID is a id ID string `json:"id,omitempty"` // Name is a name Name string `json:"name,omitempty"` // Ports References to the port belonging to this connection. Typically // all ports within one connection are distributed over the same // device. // Ports []string `json:"ports,omitempty"` // PortReservations A list of `port-reservations` for this connection. PortReservations []string `json:"port_reservations,omitempty"` // Pop The ID of the point of presence (see `/pops`), where // the physical port(s) are present. // Pop string `json:"pop,omitempty"` // Speed Shows the total bandwidth of the connection in Mbit/s. // Speed *int `json:"speed,omitempty"` // CapacityAllocated Sum of the bandwidth of all network services using // the connection in Mbit/s. CapacityAllocated int `json:"capacity_allocated,omitempty"` // CapacityAllocationLimit Maximum allocatable capacity of the connection in Mbit/s. // When `null`, the exchange does not impose any limit. // CapacityAllocationLimit int `json:"capacity_allocation_limit,omitempty"` // VLANTypes A list of vlan config types you can configure using // this connection. VLANTypes []string `json:"vlan_types,omitempty"` // OuterVLANEthertypes The ethertype of the outer tag in hexadecimal notation. // OuterVLANEthertypes []string `json:"outer_vlan_ethertypes,omitempty"` // PortQuantity The number of ports which should be allocated // for this connection. PortQuantity int `json:"port_quantity,omitempty"` // SubscriberSideDemarcs The workflow for allocating ports is dependent on the // `cross_connect_initiator` property of the // `product_offering`: // // **Cross-Connect initiator: exchange** // // The subscriber needs to provide a // list of demarc information. // // // At least one needs to be provided, but not more than // `port_quantity`. // // The content is interpreted by the exchange and may // contain a reference to a pre-existing cross connect order // or information required for patching in a structured // format (e.g. // `<pp-identifier>.<hu-identifier>.<slot-identifier>.<port-identifier>`). // // Please refer to the usage guide of the internet exchange. // // --- // // **Cross-Connect initiator: subscriber** // // This field can be omitted, when the cross connect // initiator is the `subscriber`. SubscriberSideDemarcs []string `json:"subscriber_side_demarcs,omitempty"` }
Connection Connection
type ConnectionPatch ¶
type ConnectionPatch struct { // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount *string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount *string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount *string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Mode Sets the mode of the connection. The mode can be: // // - `lag_lacp`: connection is build as a LAG with LACP enabled // - `lag_static`: connection is build as LAG with static configuration // - `flex_ethernet`: connect is build as a FlexEthernet channel // - `standalone`: only one port is allowed in this connection without // any bundling. // Mode *string `json:"mode,omitempty"` // LacpTimeout This sets the LACP Timeout mode. Both ends of the connections need // to be configured the same. // LacpTimeout *string `json:"lacp_timeout,omitempty"` // ProductOffering The product offering must match the type `connection`. ProductOffering *string `json:"product_offering,omitempty"` }
ConnectionPatch Connection Update
type ConnectionProductOffering ¶
type ConnectionProductOffering struct { // Type is a type Type string `json:"type,omitempty"` // ID is a id ID string `json:"id,omitempty"` // Name Name of the product Name string `json:"name,omitempty"` // DisplayName is a display_name DisplayName string `json:"display_name,omitempty"` // ExchangeLogo An URI referencing the logo of the internet exchange. // ExchangeLogo *string `json:"exchange_logo,omitempty"` // ServiceProviderLogo An URI referencing the logo of the service provider. // ServiceProviderLogo *string `json:"service_provider_logo,omitempty"` // ProductLogo An URI referencing a logo for the product offered. // ProductLogo *string `json:"product_logo,omitempty"` // ResourceType The resource type refers to an ix-api resource. // ResourceType string `json:"resource_type,omitempty"` // HandoverMetroAreaNetwork Id of the `MetroAreaNetwork`. The service will be accessed // through the handover metro area network. // // In case of a `p2p_vc`, the `handover_metro_area_network` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroAreaNetwork string `json:"handover_metro_area_network,omitempty"` // HandoverMetroArea Id of the `MetroArea`. The network service will be // accessed from this metro area. // // In case of a `p2p_vc`, the `handover_metro_area` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroArea string `json:"handover_metro_area,omitempty"` // PhysicalPortSpeed If the service is dependent on the speed of // the physical port this field denotes the speed. PhysicalPortSpeed int `json:"physical_port_speed,omitempty"` // ServiceProvider The name of the provider providing the service. // ServiceProvider string `json:"service_provider,omitempty"` // DowngradeAllowed Indicates if the service can be migrated to // a lower bandwidth. DowngradeAllowed bool `json:"downgrade_allowed,omitempty"` // UpgradeAllowed Indicates if the service can be migrated to // a higher bandwidth. UpgradeAllowed bool `json:"upgrade_allowed,omitempty"` // OrderableNotBefore This product offering becomes available for ordering after // this point in time. OrderableNotBefore *time.Time `json:"orderable_not_before,omitempty"` // OrderableNotAfter This product offering will become unavailable for ordering after // this point in time. OrderableNotAfter *time.Time `json:"orderable_not_after,omitempty"` // ContractTerms The contract terms informally describe the contract period and // renewals. // ContractTerms *string `json:"contract_terms,omitempty"` // NoticePeriod The notice period informally states constraints // which define when the client needs to inform the // IXP in order to prevent renewal of the contract. // NoticePeriod *string `json:"notice_period,omitempty"` // CrossConnectInitiator A cross connect can be initiated by either the // exchange or the subscriber. // // This property affects which side has to provide // a LOA and demarc information. CrossConnectInitiator string `json:"cross_connect_initiator,omitempty"` // HandoverPop The ID of the point of presence (see `/pops`), where // the physical port will be present. // HandoverPop *string `json:"handover_pop,omitempty"` // MaximumPortQuantity The maximum amount of ports which can be aggregated // in the connection. `null` means no limit. MaximumPortQuantity *int `json:"maximum_port_quantity,omitempty"` // RequiredContactRoles The connection will require at least one of each of the // specified roles assigned to contacts. // // The role assignments are associated with the connection // through the `role_assignments` list property. RequiredContactRoles []string `json:"required_contact_roles,omitempty"` }
ConnectionProductOffering Connection Product Offering
func (ConnectionProductOffering) PolymorphicType ¶
func (c ConnectionProductOffering) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type ConnectionProductOfferingPatch ¶
type ConnectionProductOfferingPatch struct { // Type is a type Type string `json:"type,omitempty"` // ID is a id ID *string `json:"id,omitempty"` // Name Name of the product Name *string `json:"name,omitempty"` // DisplayName is a display_name DisplayName *string `json:"display_name,omitempty"` // ExchangeLogo An URI referencing the logo of the internet exchange. // ExchangeLogo *string `json:"exchange_logo,omitempty"` // ServiceProviderLogo An URI referencing the logo of the service provider. // ServiceProviderLogo *string `json:"service_provider_logo,omitempty"` // ProductLogo An URI referencing a logo for the product offered. // ProductLogo *string `json:"product_logo,omitempty"` // ResourceType The resource type refers to an ix-api resource. // ResourceType *string `json:"resource_type,omitempty"` // HandoverMetroAreaNetwork Id of the `MetroAreaNetwork`. The service will be accessed // through the handover metro area network. // // In case of a `p2p_vc`, the `handover_metro_area_network` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroAreaNetwork *string `json:"handover_metro_area_network,omitempty"` // HandoverMetroArea Id of the `MetroArea`. The network service will be // accessed from this metro area. // // In case of a `p2p_vc`, the `handover_metro_area` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroArea *string `json:"handover_metro_area,omitempty"` // PhysicalPortSpeed If the service is dependent on the speed of // the physical port this field denotes the speed. PhysicalPortSpeed *int `json:"physical_port_speed,omitempty"` // ServiceProvider The name of the provider providing the service. // ServiceProvider *string `json:"service_provider,omitempty"` // DowngradeAllowed Indicates if the service can be migrated to // a lower bandwidth. DowngradeAllowed *bool `json:"downgrade_allowed,omitempty"` // UpgradeAllowed Indicates if the service can be migrated to // a higher bandwidth. UpgradeAllowed *bool `json:"upgrade_allowed,omitempty"` // OrderableNotBefore This product offering becomes available for ordering after // this point in time. OrderableNotBefore *time.Time `json:"orderable_not_before,omitempty"` // OrderableNotAfter This product offering will become unavailable for ordering after // this point in time. OrderableNotAfter *time.Time `json:"orderable_not_after,omitempty"` // ContractTerms The contract terms informally describe the contract period and // renewals. // ContractTerms *string `json:"contract_terms,omitempty"` // NoticePeriod The notice period informally states constraints // which define when the client needs to inform the // IXP in order to prevent renewal of the contract. // NoticePeriod *string `json:"notice_period,omitempty"` // CrossConnectInitiator A cross connect can be initiated by either the // exchange or the subscriber. // // This property affects which side has to provide // a LOA and demarc information. CrossConnectInitiator *string `json:"cross_connect_initiator,omitempty"` // HandoverPop The ID of the point of presence (see `/pops`), where // the physical port will be present. // HandoverPop *string `json:"handover_pop,omitempty"` // MaximumPortQuantity The maximum amount of ports which can be aggregated // in the connection. `null` means no limit. MaximumPortQuantity *int `json:"maximum_port_quantity,omitempty"` // RequiredContactRoles The connection will require at least one of each of the // specified roles assigned to contacts. // // The role assignments are associated with the connection // through the `role_assignments` list property. RequiredContactRoles []string `json:"required_contact_roles,omitempty"` }
ConnectionProductOfferingPatch Conncetion Product Offering
func (ConnectionProductOfferingPatch) PolymorphicType ¶
func (c ConnectionProductOfferingPatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type ConnectionRequest ¶
type ConnectionRequest struct { // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Mode Sets the mode of the connection. The mode can be: // // - `lag_lacp`: connection is build as a LAG with LACP enabled // - `lag_static`: connection is build as LAG with static configuration // - `flex_ethernet`: connect is build as a FlexEthernet channel // - `standalone`: only one port is allowed in this connection without // any bundling. // Mode string `json:"mode,omitempty"` // LacpTimeout This sets the LACP Timeout mode. Both ends of the connections need // to be configured the same. // LacpTimeout *string `json:"lacp_timeout,omitempty"` // ProductOffering The product offering must match the type `connection`. ProductOffering string `json:"product_offering,omitempty"` // PortQuantity The number of `PortReservation`s that will be // created for this connection. PortQuantity int `json:"port_quantity,omitempty"` // SubscriberSideDemarcs The workflow for allocating ports is dependent on the // `cross_connect_initiator` property of the // `product_offering`: // // **Cross-Connect initiator: exchange** // // The subscriber needs to provide a // list of demarc information. // // At least one needs to be provided, but not more than // `port_quantity`. // // The content is interpreted by the exchange and may // contain a reference to a pre-existing cross connect order // or information required for patching in a structured // format (e.g. // `<pp-identifier>.<hu-identifier>.<slot-identifier>.<port-identifier>`). // // Please refer to the usage guide of the internet exchange. // // --- // // **Cross-Connect initiator: subscriber** // // This field can be omitted, when the cross connect // initiator is the `subscriber`. SubscriberSideDemarcs []string `json:"subscriber_side_demarcs,omitempty"` // ConnectingParty Name of the service provider who establishes // connectivity on your behalf. // // This is only relevant, if the cross connect initiator // is the `subscriber` and might be `null`. // // Please refer to the usage guide of the internet exchange. ConnectingParty *string `json:"connecting_party,omitempty"` }
ConnectionRequest Request a new connection
type ConnectionUpdate ¶
type ConnectionUpdate struct { // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Mode Sets the mode of the connection. The mode can be: // // - `lag_lacp`: connection is build as a LAG with LACP enabled // - `lag_static`: connection is build as LAG with static configuration // - `flex_ethernet`: connect is build as a FlexEthernet channel // - `standalone`: only one port is allowed in this connection without // any bundling. // Mode string `json:"mode,omitempty"` // LacpTimeout This sets the LACP Timeout mode. Both ends of the connections need // to be configured the same. // LacpTimeout *string `json:"lacp_timeout,omitempty"` // ProductOffering The product offering must match the type `connection`. ProductOffering string `json:"product_offering,omitempty"` }
ConnectionUpdate Connection Update
type ConnectionsCancellationPolicyQuery ¶
type ConnectionsCancellationPolicyQuery struct { // DecommissionAt is a decommission_at DecommissionAt string `json:"decommission_at,omitempty"` }
ConnectionsCancellationPolicyQuery has all query parameters for ConnectionsCancellationPolicy
func (*ConnectionsCancellationPolicyQuery) RawQuery ¶
func (c *ConnectionsCancellationPolicyQuery) RawQuery() string
RawQuery creates a query string for ConnectionsCancellationPolicyQuery
type ConnectionsListQuery ¶
type ConnectionsListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // State is a state State string `json:"state,omitempty"` // StateIsNot is a state__is_not StateIsNot string `json:"state__is_not,omitempty"` // Mode is a mode Mode string `json:"mode,omitempty"` // ModeIsNot is a mode__is_not ModeIsNot string `json:"mode__is_not,omitempty"` // Name is a name Name string `json:"name,omitempty"` // MetroAreaNetwork is a metro_area_network MetroAreaNetwork string `json:"metro_area_network,omitempty"` // Pop is a pop Pop string `json:"pop,omitempty"` // Facility is a facility Facility string `json:"facility,omitempty"` // RoleAssignments is a role_assignments RoleAssignments []string `json:"role_assignments,omitempty"` // Contacts is a contacts Contacts []string `json:"contacts,omitempty"` // ExternalRef is a external_ref ExternalRef string `json:"external_ref,omitempty"` }
ConnectionsListQuery has all query parameters for ConnectionsList
func (*ConnectionsListQuery) RawQuery ¶
func (c *ConnectionsListQuery) RawQuery() string
RawQuery creates a query string for ConnectionsListQuery
type Contact ¶
type Contact struct { // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // Name A name of a person or an organisation Name *string `json:"name,omitempty"` // Telephone The telephone number in E.164 Phone Number Formatting Telephone *string `json:"telephone,omitempty"` // Email The email of the legal company entity. // Email *string `json:"email,omitempty"` // ID is a id ID string `json:"id,omitempty"` }
Contact Contact
type ContactPatch ¶
type ContactPatch struct { // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount *string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount *string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // Name A name of a person or an organisation Name *string `json:"name,omitempty"` // Telephone The telephone number in E.164 Phone Number Formatting Telephone *string `json:"telephone,omitempty"` // Email The email of the legal company entity. // Email *string `json:"email,omitempty"` }
ContactPatch Contact Update
type ContactRequest ¶
type ContactRequest struct { // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // Name A name of a person or an organisation Name *string `json:"name,omitempty"` // Telephone The telephone number in E.164 Phone Number Formatting Telephone *string `json:"telephone,omitempty"` // Email The email of the legal company entity. // Email *string `json:"email,omitempty"` }
ContactRequest Contact Create Request
type ContactUpdate ¶
type ContactUpdate struct { // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // Name A name of a person or an organisation Name *string `json:"name,omitempty"` // Telephone The telephone number in E.164 Phone Number Formatting Telephone *string `json:"telephone,omitempty"` // Email The email of the legal company entity. // Email *string `json:"email,omitempty"` }
ContactUpdate Contact Update
type ContactsListQuery ¶
type ContactsListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // ManagingAccount is a managing_account ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount is a consuming_account ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef is a external_ref ExternalRef string `json:"external_ref,omitempty"` }
ContactsListQuery has all query parameters for ContactsList
func (*ContactsListQuery) RawQuery ¶
func (c *ContactsListQuery) RawQuery() string
RawQuery creates a query string for ContactsListQuery
type Date ¶
Date is a date only time type representing a date without time.
func MustParseDate ¶
MustParseDate decodes a Date using ParseDate, but will panic in case of an error.
func (Date) MarshalJSON ¶
MarshalJSON returns the time in date format
func (*Date) UnmarshalJSON ¶
UnmarshalJSON parses the json value of a date
type DenyMemberJoiningRule ¶
type DenyMemberJoiningRule struct { // Type is a type Type string `json:"type,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account to which access to the // network service should be granted or denied. // ConsumingAccount string `json:"consuming_account,omitempty"` // ID is a id ID string `json:"id,omitempty"` // NetworkService is a network_service NetworkService string `json:"network_service,omitempty"` }
DenyMemberJoiningRule A rule for members joining a private vlan
func (DenyMemberJoiningRule) PolymorphicType ¶
func (d DenyMemberJoiningRule) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type DenyMemberJoiningRulePatch ¶
type DenyMemberJoiningRulePatch struct { // Type is a type Type string `json:"type,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount *string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account to which access to the // network service should be granted or denied. // ConsumingAccount *string `json:"consuming_account,omitempty"` }
DenyMemberJoiningRulePatch A vlan member joining rule update
func (DenyMemberJoiningRulePatch) PolymorphicType ¶
func (d DenyMemberJoiningRulePatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type DenyMemberJoiningRuleRequest ¶
type DenyMemberJoiningRuleRequest struct { // Type is a type Type string `json:"type,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account to which access to the // network service should be granted or denied. // ConsumingAccount string `json:"consuming_account,omitempty"` // NetworkService is a network_service NetworkService string `json:"network_service,omitempty"` }
DenyMemberJoiningRuleRequest A new vlan member joining rule
func (DenyMemberJoiningRuleRequest) PolymorphicType ¶
func (d DenyMemberJoiningRuleRequest) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type DenyMemberJoiningRuleUpdate ¶
type DenyMemberJoiningRuleUpdate struct { // Type is a type Type string `json:"type,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account to which access to the // network service should be granted or denied. // ConsumingAccount string `json:"consuming_account,omitempty"` }
DenyMemberJoiningRuleUpdate A vlan member joining rule update
func (DenyMemberJoiningRuleUpdate) PolymorphicType ¶
func (d DenyMemberJoiningRuleUpdate) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type Device ¶
type Device struct { // Name Name of the device // Name string `json:"name,omitempty"` // Pop The `PointOfPresence` the device is in. Pop string `json:"pop,omitempty"` // Capabilities is a capabilities Capabilities []*DeviceCapability `json:"capabilities,omitempty"` // Facility Identifier of the facility where the device // is physically based. Facility string `json:"facility,omitempty"` // ID is a id ID string `json:"id,omitempty"` }
Device Device
type DeviceCapability ¶
type DeviceCapability struct { // MediaType The media type of the port (e.g. 1000BASE-LX, 10GBASE-LR, ...) // MediaType string `json:"media_type,omitempty"` // Speed Speed of port in Mbit/s // Speed int `json:"speed,omitempty"` // MaxLag Maximum count of ports which can be bundled to a max_lag MaxLag int `json:"max_lag,omitempty"` // Availability Count of available ports on device // Availability int `json:"availability,omitempty"` }
DeviceCapability Device Capability
type DeviceConnection ¶
type DeviceConnection struct { // CapacityMax is a capacity_max CapacityMax int `json:"capacity_max,omitempty"` // Device is a device Device string `json:"device,omitempty"` // ConnectedDevice is a connected_device ConnectedDevice string `json:"connected_device,omitempty"` // ID is a id ID string `json:"id,omitempty"` }
DeviceConnection Device Connection
type DevicesListQuery ¶
type DevicesListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // Name is a name Name string `json:"name,omitempty"` // CapabilityMediaType is a capability_media_type CapabilityMediaType string `json:"capability_media_type,omitempty"` // CapabilitySpeed is a capability_speed CapabilitySpeed int `json:"capability_speed,omitempty"` // CapabilitySpeedLt is a capability_speed__lt CapabilitySpeedLt int `json:"capability_speed__lt,omitempty"` // CapabilitySpeedLte is a capability_speed__lte CapabilitySpeedLte int `json:"capability_speed__lte,omitempty"` // CapabilitySpeedGt is a capability_speed__gt CapabilitySpeedGt int `json:"capability_speed__gt,omitempty"` // CapabilitySpeedGte is a capability_speed__gte CapabilitySpeedGte int `json:"capability_speed__gte,omitempty"` // Facility is a facility Facility string `json:"facility,omitempty"` // Pop is a pop Pop string `json:"pop,omitempty"` // MetroAreaNetwork is a metro_area_network MetroAreaNetwork string `json:"metro_area_network,omitempty"` }
DevicesListQuery has all query parameters for DevicesList
func (*DevicesListQuery) RawQuery ¶
func (d *DevicesListQuery) RawQuery() string
RawQuery creates a query string for DevicesListQuery
type Event ¶
type Event struct { // Serial is a serial Serial int `json:"serial,omitempty"` // Account is a account Account string `json:"account,omitempty"` // Type is a type Type string `json:"type,omitempty"` // Payload is a payload Payload map[string]interface{} `json:"payload,omitempty"` // Timestamp is a timestamp Timestamp time.Time `json:"timestamp,omitempty"` }
Event Event
type ExchangeLanNetworkProductOffering ¶
type ExchangeLanNetworkProductOffering struct { // Type is a type Type string `json:"type,omitempty"` // ID is a id ID string `json:"id,omitempty"` // Name Name of the product Name string `json:"name,omitempty"` // DisplayName is a display_name DisplayName string `json:"display_name,omitempty"` // ExchangeLogo An URI referencing the logo of the internet exchange. // ExchangeLogo *string `json:"exchange_logo,omitempty"` // ServiceProviderLogo An URI referencing the logo of the service provider. // ServiceProviderLogo *string `json:"service_provider_logo,omitempty"` // ProductLogo An URI referencing a logo for the product offered. // ProductLogo *string `json:"product_logo,omitempty"` // ResourceType The resource type refers to an ix-api resource. // ResourceType string `json:"resource_type,omitempty"` // HandoverMetroAreaNetwork Id of the `MetroAreaNetwork`. The service will be accessed // through the handover metro area network. // // In case of a `p2p_vc`, the `handover_metro_area_network` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroAreaNetwork string `json:"handover_metro_area_network,omitempty"` // HandoverMetroArea Id of the `MetroArea`. The network service will be // accessed from this metro area. // // In case of a `p2p_vc`, the `handover_metro_area` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroArea string `json:"handover_metro_area,omitempty"` // PhysicalPortSpeed If the service is dependent on the speed of // the physical port this field denotes the speed. PhysicalPortSpeed int `json:"physical_port_speed,omitempty"` // ServiceProvider The name of the provider providing the service. // ServiceProvider string `json:"service_provider,omitempty"` // DowngradeAllowed Indicates if the service can be migrated to // a lower bandwidth. DowngradeAllowed bool `json:"downgrade_allowed,omitempty"` // UpgradeAllowed Indicates if the service can be migrated to // a higher bandwidth. UpgradeAllowed bool `json:"upgrade_allowed,omitempty"` // OrderableNotBefore This product offering becomes available for ordering after // this point in time. OrderableNotBefore *time.Time `json:"orderable_not_before,omitempty"` // OrderableNotAfter This product offering will become unavailable for ordering after // this point in time. OrderableNotAfter *time.Time `json:"orderable_not_after,omitempty"` // ContractTerms The contract terms informally describe the contract period and // renewals. // ContractTerms *string `json:"contract_terms,omitempty"` // NoticePeriod The notice period informally states constraints // which define when the client needs to inform the // IXP in order to prevent renewal of the contract. // NoticePeriod *string `json:"notice_period,omitempty"` // ProviderVLANs The `NetworkService` provides `single` or `multi`ple vlans. ProviderVLANs string `json:"provider_vlans,omitempty"` // ServiceMetroAreaNetwork Id of the `MetroAreaNetwork`. // The service is directly provided on the metro area network. // // In case of a `p2p_vc`, the `service_metro_area_network` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroAreaNetwork string `json:"service_metro_area_network,omitempty"` // ServiceMetroArea Id of the `MetroArea`. The service is delivered // in this metro area. // // In case of a `p2p_vc`, the `service_metro_area` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroArea string `json:"service_metro_area,omitempty"` // BandwidthMin When configuring access to the network service, at least // this `capacity` must be provided. BandwidthMin int `json:"bandwidth_min,omitempty"` // BandwidthMax When not `null`, this value enforces a mandatory // rate limit for all network service configs. BandwidthMax int `json:"bandwidth_max,omitempty"` // ExchangeLanNetworkService The id of the exchange lan network service. ExchangeLanNetworkService string `json:"exchange_lan_network_service,omitempty"` }
ExchangeLanNetworkProductOffering Exchange Lan Network Product Offering
func (ExchangeLanNetworkProductOffering) PolymorphicType ¶
func (e ExchangeLanNetworkProductOffering) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type ExchangeLanNetworkProductOfferingPatch ¶
type ExchangeLanNetworkProductOfferingPatch struct { // Type is a type Type string `json:"type,omitempty"` // ID is a id ID *string `json:"id,omitempty"` // Name Name of the product Name *string `json:"name,omitempty"` // DisplayName is a display_name DisplayName *string `json:"display_name,omitempty"` // ExchangeLogo An URI referencing the logo of the internet exchange. // ExchangeLogo *string `json:"exchange_logo,omitempty"` // ServiceProviderLogo An URI referencing the logo of the service provider. // ServiceProviderLogo *string `json:"service_provider_logo,omitempty"` // ProductLogo An URI referencing a logo for the product offered. // ProductLogo *string `json:"product_logo,omitempty"` // ResourceType The resource type refers to an ix-api resource. // ResourceType *string `json:"resource_type,omitempty"` // HandoverMetroAreaNetwork Id of the `MetroAreaNetwork`. The service will be accessed // through the handover metro area network. // // In case of a `p2p_vc`, the `handover_metro_area_network` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroAreaNetwork *string `json:"handover_metro_area_network,omitempty"` // HandoverMetroArea Id of the `MetroArea`. The network service will be // accessed from this metro area. // // In case of a `p2p_vc`, the `handover_metro_area` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroArea *string `json:"handover_metro_area,omitempty"` // PhysicalPortSpeed If the service is dependent on the speed of // the physical port this field denotes the speed. PhysicalPortSpeed *int `json:"physical_port_speed,omitempty"` // ServiceProvider The name of the provider providing the service. // ServiceProvider *string `json:"service_provider,omitempty"` // DowngradeAllowed Indicates if the service can be migrated to // a lower bandwidth. DowngradeAllowed *bool `json:"downgrade_allowed,omitempty"` // UpgradeAllowed Indicates if the service can be migrated to // a higher bandwidth. UpgradeAllowed *bool `json:"upgrade_allowed,omitempty"` // OrderableNotBefore This product offering becomes available for ordering after // this point in time. OrderableNotBefore *time.Time `json:"orderable_not_before,omitempty"` // OrderableNotAfter This product offering will become unavailable for ordering after // this point in time. OrderableNotAfter *time.Time `json:"orderable_not_after,omitempty"` // ContractTerms The contract terms informally describe the contract period and // renewals. // ContractTerms *string `json:"contract_terms,omitempty"` // NoticePeriod The notice period informally states constraints // which define when the client needs to inform the // IXP in order to prevent renewal of the contract. // NoticePeriod *string `json:"notice_period,omitempty"` // ProviderVLANs The `NetworkService` provides `single` or `multi`ple vlans. ProviderVLANs *string `json:"provider_vlans,omitempty"` // ServiceMetroAreaNetwork Id of the `MetroAreaNetwork`. // The service is directly provided on the metro area network. // // In case of a `p2p_vc`, the `service_metro_area_network` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroAreaNetwork *string `json:"service_metro_area_network,omitempty"` // ServiceMetroArea Id of the `MetroArea`. The service is delivered // in this metro area. // // In case of a `p2p_vc`, the `service_metro_area` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroArea *string `json:"service_metro_area,omitempty"` // BandwidthMin When configuring access to the network service, at least // this `capacity` must be provided. BandwidthMin *int `json:"bandwidth_min,omitempty"` // BandwidthMax When not `null`, this value enforces a mandatory // rate limit for all network service configs. BandwidthMax *int `json:"bandwidth_max,omitempty"` // ExchangeLanNetworkService The id of the exchange lan network service. ExchangeLanNetworkService *string `json:"exchange_lan_network_service,omitempty"` }
ExchangeLanNetworkProductOfferingPatch Exchange Lan Network Product Offering
func (ExchangeLanNetworkProductOfferingPatch) PolymorphicType ¶
func (e ExchangeLanNetworkProductOfferingPatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type ExchangeLanNetworkService ¶
type ExchangeLanNetworkService struct { // Type is a type Type string `json:"type,omitempty"` // State is a state State string `json:"state,omitempty"` // Status is a status Status []*Status `json:"status,omitempty"` // ID is a id ID string `json:"id,omitempty"` // NscRequiredContactRoles The configuration will require at least one of each of the // specified roles assigned to contacts. // // The `RoleAssignment` is associated through the // `role_assignments` list property of the network service configuration. NscRequiredContactRoles []string `json:"nsc_required_contact_roles,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // Name Exchange-dependent service name, will be shown on the invoice. Name string `json:"name,omitempty"` // MetroAreaNetwork Id of the `MetroAreaNetwork` where // the exchange lan network service is directly provided. // // Same as `service_metro_area_network` on the related // `ProductOffering`. // MetroAreaNetwork string `json:"metro_area_network,omitempty"` // PeeringdbIxid PeeringDB ixid PeeringdbIxid *int `json:"peeringdb_ixid,omitempty"` // IxfdbIxid id of ixfdb IxfdbIxid *int `json:"ixfdb_ixid,omitempty"` // NetworkFeatures is a network_features NetworkFeatures []string `json:"network_features,omitempty"` // SubnetV4 IPv4 subnet in [dot-decimal notation](https://en.wikipedia.org/wiki/Dot-decimal_notation) // CIDR notation. // SubnetV4 string `json:"subnet_v4,omitempty"` // SubnetV6 IPv6 subnet in hexadecimal colon separated CIDR notation. // SubnetV6 string `json:"subnet_v6,omitempty"` // ProductOffering *deprecation notice* ProductOffering *string `json:"product_offering,omitempty"` }
ExchangeLanNetworkService Exchange Lan Network Service
func (ExchangeLanNetworkService) PolymorphicType ¶
func (e ExchangeLanNetworkService) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type ExchangeLanNetworkServiceConfig ¶
type ExchangeLanNetworkServiceConfig struct { // Type is a type Type string `json:"type,omitempty"` // State is a state State string `json:"state,omitempty"` // Status is a status Status []*Status `json:"status,omitempty"` // DecommissionAt The service will be decommissioned on this date. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. DecommissionAt *Date `json:"decommission_at,omitempty"` // ChargedUntil The service continues incurring charges until this date. // Typically `≥ decommission_at`. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. // // *(Sensitive Property)* ChargedUntil *Date `json:"charged_until,omitempty"` // CurrentBillingStartDate Your obligation to pay for the service will start on this date. // // However, this date may change after an upgrade and not reflect // the inital start date of the service. // // *(Sensitive Property)* CurrentBillingStartDate *Date `json:"current_billing_start_date,omitempty"` // ID is a id ID string `json:"id,omitempty"` // NetworkService The id of the configured network service. NetworkService string `json:"network_service,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // VLANConfig is a polymorphic vlan configuration VLANConfig VLANConfig `tf:"vlan_config" json:"-"` // VLANConfigRaw contains the vlan config response data VLANConfigRaw json.RawMessage `tf:"-" json:"vlan_config,omitempty"` // Capacity The capacity of the service in Mbps. If set to Null, // the maximum capacity will be used, i.e. the virtual circuit is // not rate-limited. // // An exchange may choose to constrain the available capacity range // of a `ProductOffering`. // // That means, the service can consume up to the total bandwidth // of the `Connection`. // // Typically the service is charged based on the capacity. Capacity *int `json:"capacity,omitempty"` // ASNs is a asns ASNs []int `json:"asns,omitempty"` // Macs A list of mac-address IDs. Macs []string `json:"macs,omitempty"` // IPs A list of ip-address IDs. // // Allocation of IP Addresses might be deferred depending on // the IXP implementation. No assumption should be made. IPs []string `json:"ips,omitempty"` // Listed The customer wants to be featured on the member list Listed bool `json:"listed,omitempty"` // ProductOffering The product offering must match the type `exchange_lan` // and must refer to the related network service through // the `exchange_lan_network_service` property. ProductOffering string `json:"product_offering,omitempty"` }
ExchangeLanNetworkServiceConfig Exchange Lan Network Service Config
func (ExchangeLanNetworkServiceConfig) PolymorphicType ¶
func (e ExchangeLanNetworkServiceConfig) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type ExchangeLanNetworkServiceConfigPatch ¶
type ExchangeLanNetworkServiceConfigPatch struct { // Type is a type Type string `json:"type,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount *string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount *string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // VLANConfig is a vlan_config VLANConfig VLANConfig `json:"vlan_config,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount *string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection *string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // Capacity The capacity of the service in Mbps. If set to Null, // the maximum capacity will be used, i.e. the virtual circuit is // not rate-limited. // // An exchange may choose to constrain the available capacity range // of a `ProductOffering`. // // That means, the service can consume up to the total bandwidth // of the `Connection`. // // Typically the service is charged based on the capacity. Capacity *int `json:"capacity,omitempty"` // ASNs is a asns ASNs []int `json:"asns,omitempty"` // Macs A list of mac-address IDs. Macs []string `json:"macs,omitempty"` // IPs A list of ip-address IDs. // // Allocation of IP Addresses might be deferred depending on // the IXP implementation. No assumption should be made. IPs []string `json:"ips,omitempty"` // Listed The customer wants to be featured on the member list Listed *bool `json:"listed,omitempty"` }
ExchangeLanNetworkServiceConfigPatch Exchange Lan Network Service Config Update
func (ExchangeLanNetworkServiceConfigPatch) PolymorphicType ¶
func (e ExchangeLanNetworkServiceConfigPatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type ExchangeLanNetworkServiceConfigRequest ¶
type ExchangeLanNetworkServiceConfigRequest struct { // Type is a type Type string `json:"type,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // NetworkService The id of the `NetworkService` to configure. NetworkService string `json:"network_service,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // VLANConfig is a vlan_config VLANConfig VLANConfig `json:"vlan_config,omitempty"` // Capacity The capacity of the service in Mbps. If set to Null, // the maximum capacity will be used, i.e. the virtual circuit is // not rate-limited. // // An exchange may choose to constrain the available capacity range // of a `ProductOffering`. // // That means, the service can consume up to the total bandwidth // of the `Connection`. // // Typically the service is charged based on the capacity. Capacity *int `json:"capacity,omitempty"` // ASNs is a asns ASNs []int `json:"asns,omitempty"` // Macs A list of mac-address IDs. Macs []string `json:"macs,omitempty"` // IPs A list of ip-address IDs. // // Allocation of IP Addresses might be deferred depending on // the IXP implementation. No assumption should be made. IPs []string `json:"ips,omitempty"` // Listed The customer wants to be featured on the member list Listed bool `json:"listed,omitempty"` // ProductOffering The product offering must match the type `exchange_lan` // and must refer to the related network service through // the `exchange_lan_network_service` property. ProductOffering string `json:"product_offering,omitempty"` }
ExchangeLanNetworkServiceConfigRequest Exchange Lan Network Service Config Request
func (ExchangeLanNetworkServiceConfigRequest) PolymorphicType ¶
func (e ExchangeLanNetworkServiceConfigRequest) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type ExchangeLanNetworkServiceConfigUpdate ¶
type ExchangeLanNetworkServiceConfigUpdate struct { // Type is a type Type string `json:"type,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // VLANConfig is a vlan_config VLANConfig VLANConfig `json:"vlan_config,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // Capacity The capacity of the service in Mbps. If set to Null, // the maximum capacity will be used, i.e. the virtual circuit is // not rate-limited. // // An exchange may choose to constrain the available capacity range // of a `ProductOffering`. // // That means, the service can consume up to the total bandwidth // of the `Connection`. // // Typically the service is charged based on the capacity. Capacity *int `json:"capacity,omitempty"` // ASNs is a asns ASNs []int `json:"asns,omitempty"` // Macs A list of mac-address IDs. Macs []string `json:"macs,omitempty"` // IPs A list of ip-address IDs. // // Allocation of IP Addresses might be deferred depending on // the IXP implementation. No assumption should be made. IPs []string `json:"ips,omitempty"` // Listed The customer wants to be featured on the member list Listed bool `json:"listed,omitempty"` }
ExchangeLanNetworkServiceConfigUpdate Exchange Lan Network Service Config Update
func (ExchangeLanNetworkServiceConfigUpdate) PolymorphicType ¶
func (e ExchangeLanNetworkServiceConfigUpdate) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type FacilitiesListQuery ¶
type FacilitiesListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // CapabilityMediaType is a capability_media_type CapabilityMediaType string `json:"capability_media_type,omitempty"` // CapabilitySpeed is a capability_speed CapabilitySpeed int `json:"capability_speed,omitempty"` // CapabilitySpeedLt is a capability_speed__lt CapabilitySpeedLt int `json:"capability_speed__lt,omitempty"` // CapabilitySpeedLte is a capability_speed__lte CapabilitySpeedLte int `json:"capability_speed__lte,omitempty"` // CapabilitySpeedGt is a capability_speed__gt CapabilitySpeedGt int `json:"capability_speed__gt,omitempty"` // CapabilitySpeedGte is a capability_speed__gte CapabilitySpeedGte int `json:"capability_speed__gte,omitempty"` // OrganisationName is a organisation_name OrganisationName string `json:"organisation_name,omitempty"` // MetroArea is a metro_area MetroArea string `json:"metro_area,omitempty"` // MetroAreaNetwork is a metro_area_network MetroAreaNetwork string `json:"metro_area_network,omitempty"` // AddressCountry is a address_country AddressCountry string `json:"address_country,omitempty"` // AddressLocality is a address_locality AddressLocality string `json:"address_locality,omitempty"` // PostalCode is a postal_code PostalCode string `json:"postal_code,omitempty"` }
FacilitiesListQuery has all query parameters for FacilitiesList
func (*FacilitiesListQuery) RawQuery ¶
func (f *FacilitiesListQuery) RawQuery() string
RawQuery creates a query string for FacilitiesListQuery
type Facility ¶
type Facility struct { // Name Name of the Datacenter as called by the operator // Name string `json:"name,omitempty"` // MetroArea Id of the `MetroArea` the DC is located in. // MetroArea string `json:"metro_area,omitempty"` // AddressCountry ISO 3166-1 alpha-2 country code, for example DE // AddressCountry string `json:"address_country,omitempty"` // AddressLocality The locality/city. For example, Mountain View. AddressLocality string `json:"address_locality,omitempty"` // AddressRegion The region. For example, CA AddressRegion string `json:"address_region,omitempty"` // PostalCode A postal code. For example, 9404 PostalCode string `json:"postal_code,omitempty"` // StreetAddress The street address. For example, 1600 Amphitheatre Pkwy. StreetAddress string `json:"street_address,omitempty"` // PeeringdbFacilityID [PeeringDB](https://www.peeringdb.com) facitlity ID, // can be extracted from the url https://www.peeringdb.com/fac/$id // PeeringdbFacilityID *int `json:"peeringdb_facility_id,omitempty"` // OrganisationName Name of Datacenter operator // OrganisationName string `json:"organisation_name,omitempty"` // Pops List of pops reachable from the `Facility`. Pops []string `json:"pops,omitempty"` // Latitude Latitude of the facility's location. // Latitude *float64 `json:"latitude,omitempty"` // Longitude Longitude of the facility's location. // Longitude *float64 `json:"longitude,omitempty"` // ID is a id ID string `json:"id,omitempty"` }
Facility Facility
type IPAddress ¶
type IPAddress struct { // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // Version The version of the internet protocol. // Version int `json:"version,omitempty"` // Address IPv4 or IPv6 Address in the following format: // - IPv4: [dot-decimal notation](https://en.wikipedia.org/wiki/Dot-decimal_notation) // - IPv6: hexadecimal colon separated notation // Address string `json:"address,omitempty"` // PrefixLength The CIDR ip prefix length // PrefixLength int `json:"prefix_length,omitempty"` // FQDN is a fqdn FQDN *string `json:"fqdn,omitempty"` // ValidNotBefore is a valid_not_before ValidNotBefore *time.Time `json:"valid_not_before,omitempty"` // ValidNotAfter is a valid_not_after ValidNotAfter *time.Time `json:"valid_not_after,omitempty"` // ID is a id ID string `json:"id,omitempty"` }
IPAddress IP-Address
type IPAddressPatch ¶
type IPAddressPatch struct { // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount *string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount *string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // Version The version of the internet protocol. // Version *int `json:"version,omitempty"` // Address IPv4 or IPv6 Address in the following format: // - IPv4: [dot-decimal notation](https://en.wikipedia.org/wiki/Dot-decimal_notation) // - IPv6: hexadecimal colon separated notation // Address *string `json:"address,omitempty"` // PrefixLength The CIDR ip prefix length // PrefixLength *int `json:"prefix_length,omitempty"` // FQDN is a fqdn FQDN *string `json:"fqdn,omitempty"` // ValidNotBefore is a valid_not_before ValidNotBefore *time.Time `json:"valid_not_before,omitempty"` // ValidNotAfter is a valid_not_after ValidNotAfter *time.Time `json:"valid_not_after,omitempty"` }
IPAddressPatch IP-Address Update
type IPAddressRequest ¶
type IPAddressRequest struct { // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // Version The version of the internet protocol. // Version int `json:"version,omitempty"` // Address IPv4 or IPv6 Address in the following format: // - IPv4: [dot-decimal notation](https://en.wikipedia.org/wiki/Dot-decimal_notation) // - IPv6: hexadecimal colon separated notation // Address string `json:"address,omitempty"` // PrefixLength The CIDR ip prefix length // PrefixLength int `json:"prefix_length,omitempty"` // FQDN is a fqdn FQDN *string `json:"fqdn,omitempty"` // ValidNotBefore is a valid_not_before ValidNotBefore *time.Time `json:"valid_not_before,omitempty"` // ValidNotAfter is a valid_not_after ValidNotAfter *time.Time `json:"valid_not_after,omitempty"` }
IPAddressRequest IP-Address / Prefix allocation Request
type IPAddressUpdate ¶
type IPAddressUpdate struct { // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // Version The version of the internet protocol. // Version int `json:"version,omitempty"` // Address IPv4 or IPv6 Address in the following format: // - IPv4: [dot-decimal notation](https://en.wikipedia.org/wiki/Dot-decimal_notation) // - IPv6: hexadecimal colon separated notation // Address string `json:"address,omitempty"` // PrefixLength The CIDR ip prefix length // PrefixLength int `json:"prefix_length,omitempty"` // FQDN is a fqdn FQDN *string `json:"fqdn,omitempty"` // ValidNotBefore is a valid_not_before ValidNotBefore *time.Time `json:"valid_not_before,omitempty"` // ValidNotAfter is a valid_not_after ValidNotAfter *time.Time `json:"valid_not_after,omitempty"` }
IPAddressUpdate IP-Address Update
type IPsListQuery ¶
type IPsListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // ManagingAccount is a managing_account ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount is a consuming_account ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef is a external_ref ExternalRef string `json:"external_ref,omitempty"` // NetworkService is a network_service NetworkService string `json:"network_service,omitempty"` // NetworkServiceConfig is a network_service_config NetworkServiceConfig string `json:"network_service_config,omitempty"` // NetworkFeature is a network_feature NetworkFeature string `json:"network_feature,omitempty"` // NetworkFeatureConfig is a network_feature_config NetworkFeatureConfig string `json:"network_feature_config,omitempty"` // Version is a version Version int `json:"version,omitempty"` // FQDN is a fqdn FQDN string `json:"fqdn,omitempty"` // PrefixLength is a prefix_length PrefixLength int `json:"prefix_length,omitempty"` // ValidNotBefore is a valid_not_before ValidNotBefore string `json:"valid_not_before,omitempty"` // ValidNotAfter is a valid_not_after ValidNotAfter string `json:"valid_not_after,omitempty"` }
IPsListQuery has all query parameters for IPsList
func (*IPsListQuery) RawQuery ¶
func (i *IPsListQuery) RawQuery() string
RawQuery creates a query string for IPsListQuery
type IXPSpecificFeatureFlag ¶
type IXPSpecificFeatureFlag struct { // Name The name of the feature flag. // Name string `json:"name,omitempty"` // Description The description of the feature flag. // Description string `json:"description,omitempty"` // Mandatory This feature will always be enabled, even if not provided in // the corresponding config's list of `flags`. // Mandatory bool `json:"mandatory,omitempty"` }
IXPSpecificFeatureFlag IXP-Specific Feature Flag
type IXPSpecificFeatureFlagConfig ¶
type IXPSpecificFeatureFlagConfig struct { // Name The name of the feature flag. // Name string `json:"name,omitempty"` // Enabled Enable the feature. // // *Mandatory features can not be disabled*. Enabled bool `json:"enabled,omitempty"` }
IXPSpecificFeatureFlagConfig IXP-Specific Feature Flag Configuration
type MP2MPNetworkProductOffering ¶
type MP2MPNetworkProductOffering struct { // Type is a type Type string `json:"type,omitempty"` // ID is a id ID string `json:"id,omitempty"` // Name Name of the product Name string `json:"name,omitempty"` // DisplayName is a display_name DisplayName string `json:"display_name,omitempty"` // ExchangeLogo An URI referencing the logo of the internet exchange. // ExchangeLogo *string `json:"exchange_logo,omitempty"` // ServiceProviderLogo An URI referencing the logo of the service provider. // ServiceProviderLogo *string `json:"service_provider_logo,omitempty"` // ProductLogo An URI referencing a logo for the product offered. // ProductLogo *string `json:"product_logo,omitempty"` // ResourceType The resource type refers to an ix-api resource. // ResourceType string `json:"resource_type,omitempty"` // HandoverMetroAreaNetwork Id of the `MetroAreaNetwork`. The service will be accessed // through the handover metro area network. // // In case of a `p2p_vc`, the `handover_metro_area_network` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroAreaNetwork string `json:"handover_metro_area_network,omitempty"` // HandoverMetroArea Id of the `MetroArea`. The network service will be // accessed from this metro area. // // In case of a `p2p_vc`, the `handover_metro_area` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroArea string `json:"handover_metro_area,omitempty"` // PhysicalPortSpeed If the service is dependent on the speed of // the physical port this field denotes the speed. PhysicalPortSpeed int `json:"physical_port_speed,omitempty"` // ServiceProvider The name of the provider providing the service. // ServiceProvider string `json:"service_provider,omitempty"` // DowngradeAllowed Indicates if the service can be migrated to // a lower bandwidth. DowngradeAllowed bool `json:"downgrade_allowed,omitempty"` // UpgradeAllowed Indicates if the service can be migrated to // a higher bandwidth. UpgradeAllowed bool `json:"upgrade_allowed,omitempty"` // OrderableNotBefore This product offering becomes available for ordering after // this point in time. OrderableNotBefore *time.Time `json:"orderable_not_before,omitempty"` // OrderableNotAfter This product offering will become unavailable for ordering after // this point in time. OrderableNotAfter *time.Time `json:"orderable_not_after,omitempty"` // ContractTerms The contract terms informally describe the contract period and // renewals. // ContractTerms *string `json:"contract_terms,omitempty"` // NoticePeriod The notice period informally states constraints // which define when the client needs to inform the // IXP in order to prevent renewal of the contract. // NoticePeriod *string `json:"notice_period,omitempty"` // ProviderVLANs The `NetworkService` provides `single` or `multi`ple vlans. ProviderVLANs string `json:"provider_vlans,omitempty"` // ServiceMetroAreaNetwork Id of the `MetroAreaNetwork`. // The service is directly provided on the metro area network. // // In case of a `p2p_vc`, the `service_metro_area_network` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroAreaNetwork string `json:"service_metro_area_network,omitempty"` // ServiceMetroArea Id of the `MetroArea`. The service is delivered // in this metro area. // // In case of a `p2p_vc`, the `service_metro_area` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroArea string `json:"service_metro_area,omitempty"` // BandwidthMin When configuring access to the network service, at least // this `capacity` must be provided. BandwidthMin int `json:"bandwidth_min,omitempty"` // BandwidthMax When not `null`, this value enforces a mandatory // rate limit for all network service configs. BandwidthMax int `json:"bandwidth_max,omitempty"` }
MP2MPNetworkProductOffering MP2MP Network Product Offering
func (MP2MPNetworkProductOffering) PolymorphicType ¶
func (m MP2MPNetworkProductOffering) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type MP2MPNetworkProductOfferingPatch ¶
type MP2MPNetworkProductOfferingPatch struct { // Type is a type Type string `json:"type,omitempty"` // ID is a id ID *string `json:"id,omitempty"` // Name Name of the product Name *string `json:"name,omitempty"` // DisplayName is a display_name DisplayName *string `json:"display_name,omitempty"` // ExchangeLogo An URI referencing the logo of the internet exchange. // ExchangeLogo *string `json:"exchange_logo,omitempty"` // ServiceProviderLogo An URI referencing the logo of the service provider. // ServiceProviderLogo *string `json:"service_provider_logo,omitempty"` // ProductLogo An URI referencing a logo for the product offered. // ProductLogo *string `json:"product_logo,omitempty"` // ResourceType The resource type refers to an ix-api resource. // ResourceType *string `json:"resource_type,omitempty"` // HandoverMetroAreaNetwork Id of the `MetroAreaNetwork`. The service will be accessed // through the handover metro area network. // // In case of a `p2p_vc`, the `handover_metro_area_network` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroAreaNetwork *string `json:"handover_metro_area_network,omitempty"` // HandoverMetroArea Id of the `MetroArea`. The network service will be // accessed from this metro area. // // In case of a `p2p_vc`, the `handover_metro_area` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroArea *string `json:"handover_metro_area,omitempty"` // PhysicalPortSpeed If the service is dependent on the speed of // the physical port this field denotes the speed. PhysicalPortSpeed *int `json:"physical_port_speed,omitempty"` // ServiceProvider The name of the provider providing the service. // ServiceProvider *string `json:"service_provider,omitempty"` // DowngradeAllowed Indicates if the service can be migrated to // a lower bandwidth. DowngradeAllowed *bool `json:"downgrade_allowed,omitempty"` // UpgradeAllowed Indicates if the service can be migrated to // a higher bandwidth. UpgradeAllowed *bool `json:"upgrade_allowed,omitempty"` // OrderableNotBefore This product offering becomes available for ordering after // this point in time. OrderableNotBefore *time.Time `json:"orderable_not_before,omitempty"` // OrderableNotAfter This product offering will become unavailable for ordering after // this point in time. OrderableNotAfter *time.Time `json:"orderable_not_after,omitempty"` // ContractTerms The contract terms informally describe the contract period and // renewals. // ContractTerms *string `json:"contract_terms,omitempty"` // NoticePeriod The notice period informally states constraints // which define when the client needs to inform the // IXP in order to prevent renewal of the contract. // NoticePeriod *string `json:"notice_period,omitempty"` // ProviderVLANs The `NetworkService` provides `single` or `multi`ple vlans. ProviderVLANs *string `json:"provider_vlans,omitempty"` // ServiceMetroAreaNetwork Id of the `MetroAreaNetwork`. // The service is directly provided on the metro area network. // // In case of a `p2p_vc`, the `service_metro_area_network` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroAreaNetwork *string `json:"service_metro_area_network,omitempty"` // ServiceMetroArea Id of the `MetroArea`. The service is delivered // in this metro area. // // In case of a `p2p_vc`, the `service_metro_area` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroArea *string `json:"service_metro_area,omitempty"` // BandwidthMin When configuring access to the network service, at least // this `capacity` must be provided. BandwidthMin *int `json:"bandwidth_min,omitempty"` // BandwidthMax When not `null`, this value enforces a mandatory // rate limit for all network service configs. BandwidthMax *int `json:"bandwidth_max,omitempty"` }
MP2MPNetworkProductOfferingPatch MP2MP Network Product Offering
func (MP2MPNetworkProductOfferingPatch) PolymorphicType ¶
func (m MP2MPNetworkProductOfferingPatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type MP2MPNetworkService ¶
type MP2MPNetworkService struct { // Type is a type Type string `json:"type,omitempty"` // State is a state State string `json:"state,omitempty"` // Status is a status Status []*Status `json:"status,omitempty"` // ID is a id ID string `json:"id,omitempty"` // NscRequiredContactRoles The configuration will require at least one of each of the // specified roles assigned to contacts. // // The `RoleAssignment` is associated through the // `role_assignments` list property of the network service configuration. NscRequiredContactRoles []string `json:"nsc_required_contact_roles,omitempty"` // ProductOffering is a product_offering ProductOffering string `json:"product_offering,omitempty"` // NscProductOfferings An optional list of `ProductOffering`s which can be used in the // network service configs for this service. NscProductOfferings []string `json:"nsc_product_offerings,omitempty"` // DecommissionAt The service will be decommissioned on this date. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. DecommissionAt *Date `json:"decommission_at,omitempty"` // ChargedUntil The service continues incurring charges until this date. // Typically `≥ decommission_at`. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. // // *(Sensitive Property)* ChargedUntil *Date `json:"charged_until,omitempty"` // CurrentBillingStartDate Your obligation to pay for the service will start on this date. // // However, this date may change after an upgrade and not reflect // the inital start date of the service. // // *(Sensitive Property)* CurrentBillingStartDate *Date `json:"current_billing_start_date,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // Public A public mp2mp network service can be joined // by everyone on the exchange unless denied by // a member-joining-rule. // // Public network services are visible to other // members of the IXP, however only `display_name`, `type`, // `product_offering`, `consuming_account` and // `managing_account` are made available. // // Other required fields are redacted. Public *bool `json:"public,omitempty"` // DisplayName Name of the multi-point to multi-point virtual circuit. // // It is visible to all parties allowed to connect // to this virtual circuit. // // It is intended for humans to make sense of, for example: // "Financial Clearance LAN". // DisplayName *string `json:"display_name,omitempty"` // MemberJoiningRules is a member_joining_rules MemberJoiningRules []string `json:"member_joining_rules,omitempty"` // NetworkFeatures is a network_features NetworkFeatures []string `json:"network_features,omitempty"` }
MP2MPNetworkService MP2MP Network Service
func (MP2MPNetworkService) PolymorphicType ¶
func (m MP2MPNetworkService) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type MP2MPNetworkServiceConfig ¶
type MP2MPNetworkServiceConfig struct { // Type is a type Type string `json:"type,omitempty"` // State is a state State string `json:"state,omitempty"` // Status is a status Status []*Status `json:"status,omitempty"` // DecommissionAt The service will be decommissioned on this date. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. DecommissionAt *Date `json:"decommission_at,omitempty"` // ChargedUntil The service continues incurring charges until this date. // Typically `≥ decommission_at`. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. // // *(Sensitive Property)* ChargedUntil *Date `json:"charged_until,omitempty"` // CurrentBillingStartDate Your obligation to pay for the service will start on this date. // // However, this date may change after an upgrade and not reflect // the inital start date of the service. // // *(Sensitive Property)* CurrentBillingStartDate *Date `json:"current_billing_start_date,omitempty"` // ID is a id ID string `json:"id,omitempty"` // NetworkService The id of the configured network service. NetworkService string `json:"network_service,omitempty"` // ProductOffering An optional id of a `ProductOffering`. // // Valid ids of product-offerings can be found in the // `nsc_product_offerings` property of the `NetworkService`. ProductOffering *string `json:"product_offering,omitempty"` // Capacity The capacity of the service in Mbps. If set to Null, // the maximum capacity will be used, i.e. the virtual circuit is // not rate-limited. // // An exchange may choose to constrain the available capacity range // of a `ProductOffering`. // // That means, the service can consume up to the total bandwidth // of the `Connection`. // // Typically the service is charged based on the capacity. Capacity *int `json:"capacity,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // VLANConfig is a polymorphic vlan configuration VLANConfig VLANConfig `tf:"vlan_config" json:"-"` // VLANConfigRaw contains the vlan config response data VLANConfigRaw json.RawMessage `tf:"-" json:"vlan_config,omitempty"` // Macs is a macs Macs []string `json:"macs,omitempty"` }
MP2MPNetworkServiceConfig MP2MP Network Service Config
func (MP2MPNetworkServiceConfig) PolymorphicType ¶
func (m MP2MPNetworkServiceConfig) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type MP2MPNetworkServiceConfigPatch ¶
type MP2MPNetworkServiceConfigPatch struct { // Type is a type Type string `json:"type,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount *string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount *string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // VLANConfig is a vlan_config VLANConfig VLANConfig `json:"vlan_config,omitempty"` // ProductOffering An optional id of a `ProductOffering`. // // Valid ids of product-offerings can be found in the // `nsc_product_offerings` property of the `NetworkService`. ProductOffering *string `json:"product_offering,omitempty"` // Capacity The capacity of the service in Mbps. If set to Null, // the maximum capacity will be used, i.e. the virtual circuit is // not rate-limited. // // An exchange may choose to constrain the available capacity range // of a `ProductOffering`. // // That means, the service can consume up to the total bandwidth // of the `Connection`. // // Typically the service is charged based on the capacity. Capacity *int `json:"capacity,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount *string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection *string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // Macs is a macs Macs []string `json:"macs,omitempty"` }
MP2MPNetworkServiceConfigPatch MP2MP Network Service Config Update
func (MP2MPNetworkServiceConfigPatch) PolymorphicType ¶
func (m MP2MPNetworkServiceConfigPatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type MP2MPNetworkServiceConfigRequest ¶
type MP2MPNetworkServiceConfigRequest struct { // Type is a type Type string `json:"type,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // NetworkService The id of the `NetworkService` to configure. NetworkService string `json:"network_service,omitempty"` // ProductOffering An optional id of a `ProductOffering`. // // Valid ids of product-offerings can be found in the // `nsc_product_offerings` property of the `NetworkService`. ProductOffering *string `json:"product_offering,omitempty"` // Capacity The capacity of the service in Mbps. If set to Null, // the maximum capacity will be used, i.e. the virtual circuit is // not rate-limited. // // An exchange may choose to constrain the available capacity range // of a `ProductOffering`. // // That means, the service can consume up to the total bandwidth // of the `Connection`. // // Typically the service is charged based on the capacity. Capacity *int `json:"capacity,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // VLANConfig is a vlan_config VLANConfig VLANConfig `json:"vlan_config,omitempty"` // Macs is a macs Macs []string `json:"macs,omitempty"` }
MP2MPNetworkServiceConfigRequest MP2MP Network Service Config Request
func (MP2MPNetworkServiceConfigRequest) PolymorphicType ¶
func (m MP2MPNetworkServiceConfigRequest) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type MP2MPNetworkServiceConfigUpdate ¶
type MP2MPNetworkServiceConfigUpdate struct { // Type is a type Type string `json:"type,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // VLANConfig is a vlan_config VLANConfig VLANConfig `json:"vlan_config,omitempty"` // ProductOffering An optional id of a `ProductOffering`. // // Valid ids of product-offerings can be found in the // `nsc_product_offerings` property of the `NetworkService`. ProductOffering *string `json:"product_offering,omitempty"` // Capacity The capacity of the service in Mbps. If set to Null, // the maximum capacity will be used, i.e. the virtual circuit is // not rate-limited. // // An exchange may choose to constrain the available capacity range // of a `ProductOffering`. // // That means, the service can consume up to the total bandwidth // of the `Connection`. // // Typically the service is charged based on the capacity. Capacity *int `json:"capacity,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // Macs is a macs Macs []string `json:"macs,omitempty"` }
MP2MPNetworkServiceConfigUpdate MP2MP Network Service Config Update
func (MP2MPNetworkServiceConfigUpdate) PolymorphicType ¶
func (m MP2MPNetworkServiceConfigUpdate) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type MP2MPNetworkServicePatch ¶
type MP2MPNetworkServicePatch struct { // Type is a type Type string `json:"type,omitempty"` // ProductOffering is a product_offering ProductOffering *string `json:"product_offering,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount *string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount *string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount *string `json:"billing_account,omitempty"` // Public A public mp2mp network service can be joined // by everyone on the exchange unless denied by // a member-joining-rule. // // Public network services are visible to other // members of the IXP, however only `display_name`, `type`, // `product_offering`, `consuming_account` and // `managing_account` are made available. // // Other required fields are redacted. Public *bool `json:"public,omitempty"` // DisplayName Name of the multi-point to multi-point virtual circuit. // // It is visible to all parties allowed to connect // to this virtual circuit. // // It is intended for humans to make sense of, for example: // "Financial Clearance LAN". // DisplayName *string `json:"display_name,omitempty"` }
MP2MPNetworkServicePatch MP2MP Network Service Update
func (MP2MPNetworkServicePatch) PolymorphicType ¶
func (m MP2MPNetworkServicePatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type MP2MPNetworkServiceRequest ¶
type MP2MPNetworkServiceRequest struct { // Type is a type Type string `json:"type,omitempty"` // ProductOffering is a product_offering ProductOffering string `json:"product_offering,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // Public A public mp2mp network service can be joined // by everyone on the exchange unless denied by // a member-joining-rule. // // Public network services are visible to other // members of the IXP, however only `display_name`, `type`, // `product_offering`, `consuming_account` and // `managing_account` are made available. // // Other required fields are redacted. Public *bool `json:"public,omitempty"` // DisplayName Name of the multi-point to multi-point virtual circuit. // // It is visible to all parties allowed to connect // to this virtual circuit. // // It is intended for humans to make sense of, for example: // "Financial Clearance LAN". // DisplayName *string `json:"display_name,omitempty"` }
MP2MPNetworkServiceRequest MP2MP Network Service Request
func (MP2MPNetworkServiceRequest) PolymorphicType ¶
func (m MP2MPNetworkServiceRequest) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type MP2MPNetworkServiceUpdate ¶
type MP2MPNetworkServiceUpdate struct { // Type is a type Type string `json:"type,omitempty"` // ProductOffering is a product_offering ProductOffering string `json:"product_offering,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // Public A public mp2mp network service can be joined // by everyone on the exchange unless denied by // a member-joining-rule. // // Public network services are visible to other // members of the IXP, however only `display_name`, `type`, // `product_offering`, `consuming_account` and // `managing_account` are made available. // // Other required fields are redacted. Public *bool `json:"public,omitempty"` // DisplayName Name of the multi-point to multi-point virtual circuit. // // It is visible to all parties allowed to connect // to this virtual circuit. // // It is intended for humans to make sense of, for example: // "Financial Clearance LAN". // DisplayName *string `json:"display_name,omitempty"` }
MP2MPNetworkServiceUpdate MP2MP Network Service Update
func (MP2MPNetworkServiceUpdate) PolymorphicType ¶
func (m MP2MPNetworkServiceUpdate) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type MacAddress ¶
type MacAddress struct { // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // Address Unicast MAC address, formatted hexadecimal values with colons. // Address string `json:"address,omitempty"` // ValidNotBefore When a mac address is assigned to a NSC, and the current // datetime is before this value, then the MAC address *cannot* // be used on the peering platform. // // Afterwards, it is supposed to be available. If the value is // `null` or the property does not exist, the mac address is // valid from the creation date. ValidNotBefore *time.Time `json:"valid_not_before,omitempty"` // ValidNotAfter When a mac address is assigned to an NSC, and the current datetime // is before this value, the MAC address *can* be used on the peering platform. // // Afterwards, it is supposed to be unassigned from the NSC and cannot // any longer be used on the peering platform. // // If the value is null or the property does not exist, the MAC address // is valid indefinitely. The value may not be in the past. ValidNotAfter *time.Time `json:"valid_not_after,omitempty"` // ID is a id ID string `json:"id,omitempty"` }
MacAddress MAC-Address
type MacAddressRequest ¶
type MacAddressRequest struct { // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // Address Unicast MAC address, formatted hexadecimal values with colons. // Address string `json:"address,omitempty"` // ValidNotBefore When a mac address is assigned to a NSC, and the current // datetime is before this value, then the MAC address *cannot* // be used on the peering platform. // // Afterwards, it is supposed to be available. If the value is // `null` or the property does not exist, the mac address is // valid from the creation date. ValidNotBefore *time.Time `json:"valid_not_before,omitempty"` // ValidNotAfter When a mac address is assigned to an NSC, and the current datetime // is before this value, the MAC address *can* be used on the peering platform. // // Afterwards, it is supposed to be unassigned from the NSC and cannot // any longer be used on the peering platform. // // If the value is null or the property does not exist, the MAC address // is valid indefinitely. The value may not be in the past. ValidNotAfter *time.Time `json:"valid_not_after,omitempty"` }
MacAddressRequest MAC-Address Request
type MacsListQuery ¶
type MacsListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // ManagingAccount is a managing_account ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount is a consuming_account ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef is a external_ref ExternalRef string `json:"external_ref,omitempty"` // NetworkServiceConfig is a network_service_config NetworkServiceConfig string `json:"network_service_config,omitempty"` // Address is a address Address string `json:"address,omitempty"` // ValidNotBefore is a valid_not_before ValidNotBefore string `json:"valid_not_before,omitempty"` // ValidNotAfter is a valid_not_after ValidNotAfter string `json:"valid_not_after,omitempty"` }
MacsListQuery has all query parameters for MacsList
func (*MacsListQuery) RawQuery ¶
func (m *MacsListQuery) RawQuery() string
RawQuery creates a query string for MacsListQuery
type MemberJoiningRule ¶
type MemberJoiningRule interface { Polymorphic }
MemberJoiningRule Polymorphic Member Joining Rule
type MemberJoiningRulePatch ¶
type MemberJoiningRulePatch interface { Polymorphic }
MemberJoiningRulePatch Polymorphic Member Joining Rule Update
type MemberJoiningRuleRequest ¶
type MemberJoiningRuleRequest interface { Polymorphic }
MemberJoiningRuleRequest Polymorphic Member Joining Rule Request
type MemberJoiningRuleUpdate ¶
type MemberJoiningRuleUpdate interface { Polymorphic }
MemberJoiningRuleUpdate Polymorphic Member Joining Rule Update
type MemberJoiningRulesListQuery ¶
type MemberJoiningRulesListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // NetworkService is a network_service NetworkService string `json:"network_service,omitempty"` }
MemberJoiningRulesListQuery has all query parameters for MemberJoiningRulesList
func (*MemberJoiningRulesListQuery) RawQuery ¶
func (m *MemberJoiningRulesListQuery) RawQuery() string
RawQuery creates a query string for MemberJoiningRulesListQuery
type MetroArea ¶
type MetroArea struct { // ID is a id ID string `json:"id,omitempty"` // UnLocode The UN/LOCODE for identifying the metro area. // UnLocode string `json:"un_locode,omitempty"` // IataCode The three letter IATA airport code for identiying the // metro area. // IataCode string `json:"iata_code,omitempty"` // DisplayName The name of the metro area. Likely the same as the IATA code. // DisplayName string `json:"display_name,omitempty"` // Facilities List of facilities the metro area network. Facilities []string `json:"facilities,omitempty"` // MetroAreaNetworks List of networks in the metro area. MetroAreaNetworks []string `json:"metro_area_networks,omitempty"` }
MetroArea MetroArea
type MetroAreaNetwork ¶
type MetroAreaNetwork struct { // Name The name of the metro area network. // Name string `json:"name,omitempty"` // MetroArea The id of the metro area. // MetroArea string `json:"metro_area,omitempty"` // ServiceProvider The service provider is operating the network. // Usually the exchange. // ServiceProvider string `json:"service_provider,omitempty"` // Pops List of pops in the metro area network. Pops []string `json:"pops,omitempty"` // ID is a id ID string `json:"id,omitempty"` }
MetroAreaNetwork MetroAreaNetwork
type MetroAreaNetworksListQuery ¶
type MetroAreaNetworksListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // Name is a name Name string `json:"name,omitempty"` // MetroArea is a metro_area MetroArea string `json:"metro_area,omitempty"` // ServiceProvider is a service_provider ServiceProvider string `json:"service_provider,omitempty"` }
MetroAreaNetworksListQuery has all query parameters for MetroAreaNetworksList
func (*MetroAreaNetworksListQuery) RawQuery ¶
func (m *MetroAreaNetworksListQuery) RawQuery() string
RawQuery creates a query string for MetroAreaNetworksListQuery
type MetroAreasListQuery ¶
type MetroAreasListQuery struct { // ID is a id ID []string `json:"id,omitempty"` }
MetroAreasListQuery has all query parameters for MetroAreasList
func (*MetroAreasListQuery) RawQuery ¶
func (m *MetroAreasListQuery) RawQuery() string
RawQuery creates a query string for MetroAreasListQuery
type NetworkFeature ¶
type NetworkFeature interface { Polymorphic }
NetworkFeature Polymorphic Network Feature
type NetworkFeatureConfig ¶
type NetworkFeatureConfig interface { Polymorphic }
NetworkFeatureConfig Polymorphic Network Feature Config
type NetworkFeatureConfigPatch ¶
type NetworkFeatureConfigPatch interface { Polymorphic }
NetworkFeatureConfigPatch Polymorphic Network Feauture Config Patch
type NetworkFeatureConfigRequest ¶
type NetworkFeatureConfigRequest interface { Polymorphic }
NetworkFeatureConfigRequest Polymorphic Network Feature Config Request
type NetworkFeatureConfigUpdate ¶
type NetworkFeatureConfigUpdate interface { Polymorphic }
NetworkFeatureConfigUpdate Polymorphic Network Feauture Config Update
type NetworkFeatureConfigsListQuery ¶
type NetworkFeatureConfigsListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // State is a state State string `json:"state,omitempty"` // StateIsNot is a state__is_not StateIsNot string `json:"state__is_not,omitempty"` // ManagingAccount is a managing_account ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount is a consuming_account ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef is a external_ref ExternalRef string `json:"external_ref,omitempty"` // Type is a type Type string `json:"type,omitempty"` // ServiceConfig is a service_config ServiceConfig string `json:"service_config,omitempty"` // NetworkFeature is a network_feature NetworkFeature string `json:"network_feature,omitempty"` // RoleAssignments is a role_assignments RoleAssignments []string `json:"role_assignments,omitempty"` // Contacts is a contacts Contacts []string `json:"contacts,omitempty"` }
NetworkFeatureConfigsListQuery has all query parameters for NetworkFeatureConfigsList
func (*NetworkFeatureConfigsListQuery) RawQuery ¶
func (n *NetworkFeatureConfigsListQuery) RawQuery() string
RawQuery creates a query string for NetworkFeatureConfigsListQuery
type NetworkFeaturesListQuery ¶
type NetworkFeaturesListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // Type is a type Type string `json:"type,omitempty"` // Required is a required Required string `json:"required,omitempty"` // NetworkService is a network_service NetworkService string `json:"network_service,omitempty"` // Name is a name Name string `json:"name,omitempty"` }
NetworkFeaturesListQuery has all query parameters for NetworkFeaturesList
func (*NetworkFeaturesListQuery) RawQuery ¶
func (n *NetworkFeaturesListQuery) RawQuery() string
RawQuery creates a query string for NetworkFeaturesListQuery
type NetworkService ¶
type NetworkService interface { Polymorphic }
NetworkService Polymorphic Network Services
type NetworkServiceCancellationPolicyReadQuery ¶
type NetworkServiceCancellationPolicyReadQuery struct { // DecommissionAt is a decommission_at DecommissionAt string `json:"decommission_at,omitempty"` }
NetworkServiceCancellationPolicyReadQuery has all query parameters for NetworkServiceCancellationPolicyRead
func (*NetworkServiceCancellationPolicyReadQuery) RawQuery ¶
func (n *NetworkServiceCancellationPolicyReadQuery) RawQuery() string
RawQuery creates a query string for NetworkServiceCancellationPolicyReadQuery
type NetworkServiceChangeRequest ¶
type NetworkServiceChangeRequest struct { // ProductOffering Migrate to a diffrent product offering. Please note, that // the offering only may differ in bandwidth. ProductOffering string `json:"product_offering,omitempty"` // Capacity The desired capacity of the service in Mbps. // // Must be within the range of `bandwidth_min` and // `bandwidth_max` of the `ProductOffering`. // // When `null` the maximum capacity wil be used. Capacity *int `json:"capacity,omitempty"` }
NetworkServiceChangeRequest NetworkServiceChangeRequest
type NetworkServiceConfig ¶
type NetworkServiceConfig interface { Polymorphic }
NetworkServiceConfig Polymorphic Network Service Config
type NetworkServiceConfigCancellationPolicyReadQuery ¶
type NetworkServiceConfigCancellationPolicyReadQuery struct { // DecommissionAt is a decommission_at DecommissionAt string `json:"decommission_at,omitempty"` }
NetworkServiceConfigCancellationPolicyReadQuery has all query parameters for NetworkServiceConfigCancellationPolicyRead
func (*NetworkServiceConfigCancellationPolicyReadQuery) RawQuery ¶
func (n *NetworkServiceConfigCancellationPolicyReadQuery) RawQuery() string
RawQuery creates a query string for NetworkServiceConfigCancellationPolicyReadQuery
type NetworkServiceConfigPatch ¶
type NetworkServiceConfigPatch interface { Polymorphic }
NetworkServiceConfigPatch Polymorphic Network Service Config
type NetworkServiceConfigRequest ¶
type NetworkServiceConfigRequest interface { Polymorphic }
NetworkServiceConfigRequest Polymorhic Network Service Config Request
type NetworkServiceConfigUpdate ¶
type NetworkServiceConfigUpdate interface { Polymorphic }
NetworkServiceConfigUpdate Polymorphic Network Service Config
type NetworkServiceConfigsListQuery ¶
type NetworkServiceConfigsListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // State is a state State string `json:"state,omitempty"` // StateIsNot is a state__is_not StateIsNot string `json:"state__is_not,omitempty"` // ManagingAccount is a managing_account ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount is a consuming_account ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef is a external_ref ExternalRef string `json:"external_ref,omitempty"` // Type is a type Type string `json:"type,omitempty"` // InnerVLAN is a inner_vlan InnerVLAN int `json:"inner_vlan,omitempty"` // OuterVLAN is a outer_vlan OuterVLAN int `json:"outer_vlan,omitempty"` // Capacity is a capacity Capacity int `json:"capacity,omitempty"` // NetworkService is a network_service NetworkService string `json:"network_service,omitempty"` // Connection is a connection Connection string `json:"connection,omitempty"` // ProductOffering is a product_offering ProductOffering string `json:"product_offering,omitempty"` // RoleAssignments is a role_assignments RoleAssignments []string `json:"role_assignments,omitempty"` // Contacts is a contacts Contacts []string `json:"contacts,omitempty"` }
NetworkServiceConfigsListQuery has all query parameters for NetworkServiceConfigsList
func (*NetworkServiceConfigsListQuery) RawQuery ¶
func (n *NetworkServiceConfigsListQuery) RawQuery() string
RawQuery creates a query string for NetworkServiceConfigsListQuery
type NetworkServiceDeleteResponse ¶
type NetworkServiceDeleteResponse interface { Polymorphic }
NetworkServiceDeleteResponse Polymorphic Network Service Request
type NetworkServicePatch ¶
type NetworkServicePatch interface { Polymorphic }
NetworkServicePatch Polymorphic Network Service Patch
type NetworkServiceRequest ¶
type NetworkServiceRequest interface { Polymorphic }
NetworkServiceRequest Polymorphic Network Service Request
type NetworkServiceUpdate ¶
type NetworkServiceUpdate interface { Polymorphic }
NetworkServiceUpdate Polymorphic Network Service Update
type NetworkServicesListQuery ¶
type NetworkServicesListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // State is a state State string `json:"state,omitempty"` // StateIsNot is a state__is_not StateIsNot string `json:"state__is_not,omitempty"` // ManagingAccount is a managing_account ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount is a consuming_account ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef is a external_ref ExternalRef string `json:"external_ref,omitempty"` // Type is a type Type string `json:"type,omitempty"` // Pop is a pop Pop string `json:"pop,omitempty"` // ProductOffering is a product_offering ProductOffering string `json:"product_offering,omitempty"` }
NetworkServicesListQuery has all query parameters for NetworkServicesList
func (*NetworkServicesListQuery) RawQuery ¶
func (n *NetworkServicesListQuery) RawQuery() string
RawQuery creates a query string for NetworkServicesListQuery
type NotFoundError ¶
type NotFoundError struct {
ProblemResponse
}
NotFoundError indicates that a resource was not found
func AsErrNotFound ¶
func AsErrNotFound(err error) *NotFoundError
AsErrNotFound tries to convert an error into a not found error and will return nil if not successful
type OAuth2ClientCredentials ¶
OAuth2ClientCredentials will use OAuth2 for authentication
type P2MPNetworkProductOffering ¶
type P2MPNetworkProductOffering struct { // Type is a type Type string `json:"type,omitempty"` // ID is a id ID string `json:"id,omitempty"` // Name Name of the product Name string `json:"name,omitempty"` // DisplayName is a display_name DisplayName string `json:"display_name,omitempty"` // ExchangeLogo An URI referencing the logo of the internet exchange. // ExchangeLogo *string `json:"exchange_logo,omitempty"` // ServiceProviderLogo An URI referencing the logo of the service provider. // ServiceProviderLogo *string `json:"service_provider_logo,omitempty"` // ProductLogo An URI referencing a logo for the product offered. // ProductLogo *string `json:"product_logo,omitempty"` // ResourceType The resource type refers to an ix-api resource. // ResourceType string `json:"resource_type,omitempty"` // HandoverMetroAreaNetwork Id of the `MetroAreaNetwork`. The service will be accessed // through the handover metro area network. // // In case of a `p2p_vc`, the `handover_metro_area_network` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroAreaNetwork string `json:"handover_metro_area_network,omitempty"` // HandoverMetroArea Id of the `MetroArea`. The network service will be // accessed from this metro area. // // In case of a `p2p_vc`, the `handover_metro_area` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroArea string `json:"handover_metro_area,omitempty"` // PhysicalPortSpeed If the service is dependent on the speed of // the physical port this field denotes the speed. PhysicalPortSpeed int `json:"physical_port_speed,omitempty"` // ServiceProvider The name of the provider providing the service. // ServiceProvider string `json:"service_provider,omitempty"` // DowngradeAllowed Indicates if the service can be migrated to // a lower bandwidth. DowngradeAllowed bool `json:"downgrade_allowed,omitempty"` // UpgradeAllowed Indicates if the service can be migrated to // a higher bandwidth. UpgradeAllowed bool `json:"upgrade_allowed,omitempty"` // OrderableNotBefore This product offering becomes available for ordering after // this point in time. OrderableNotBefore *time.Time `json:"orderable_not_before,omitempty"` // OrderableNotAfter This product offering will become unavailable for ordering after // this point in time. OrderableNotAfter *time.Time `json:"orderable_not_after,omitempty"` // ContractTerms The contract terms informally describe the contract period and // renewals. // ContractTerms *string `json:"contract_terms,omitempty"` // NoticePeriod The notice period informally states constraints // which define when the client needs to inform the // IXP in order to prevent renewal of the contract. // NoticePeriod *string `json:"notice_period,omitempty"` // ProviderVLANs The `NetworkService` provides `single` or `multi`ple vlans. ProviderVLANs string `json:"provider_vlans,omitempty"` // ServiceMetroAreaNetwork Id of the `MetroAreaNetwork`. // The service is directly provided on the metro area network. // // In case of a `p2p_vc`, the `service_metro_area_network` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroAreaNetwork string `json:"service_metro_area_network,omitempty"` // ServiceMetroArea Id of the `MetroArea`. The service is delivered // in this metro area. // // In case of a `p2p_vc`, the `service_metro_area` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroArea string `json:"service_metro_area,omitempty"` // BandwidthMin When configuring access to the network service, at least // this `capacity` must be provided. BandwidthMin int `json:"bandwidth_min,omitempty"` // BandwidthMax When not `null`, this value enforces a mandatory // rate limit for all network service configs. BandwidthMax int `json:"bandwidth_max,omitempty"` }
P2MPNetworkProductOffering P2MP Network Product Offering
func (P2MPNetworkProductOffering) PolymorphicType ¶
func (p P2MPNetworkProductOffering) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2MPNetworkProductOfferingPatch ¶
type P2MPNetworkProductOfferingPatch struct { // Type is a type Type string `json:"type,omitempty"` // ID is a id ID *string `json:"id,omitempty"` // Name Name of the product Name *string `json:"name,omitempty"` // DisplayName is a display_name DisplayName *string `json:"display_name,omitempty"` // ExchangeLogo An URI referencing the logo of the internet exchange. // ExchangeLogo *string `json:"exchange_logo,omitempty"` // ServiceProviderLogo An URI referencing the logo of the service provider. // ServiceProviderLogo *string `json:"service_provider_logo,omitempty"` // ProductLogo An URI referencing a logo for the product offered. // ProductLogo *string `json:"product_logo,omitempty"` // ResourceType The resource type refers to an ix-api resource. // ResourceType *string `json:"resource_type,omitempty"` // HandoverMetroAreaNetwork Id of the `MetroAreaNetwork`. The service will be accessed // through the handover metro area network. // // In case of a `p2p_vc`, the `handover_metro_area_network` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroAreaNetwork *string `json:"handover_metro_area_network,omitempty"` // HandoverMetroArea Id of the `MetroArea`. The network service will be // accessed from this metro area. // // In case of a `p2p_vc`, the `handover_metro_area` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroArea *string `json:"handover_metro_area,omitempty"` // PhysicalPortSpeed If the service is dependent on the speed of // the physical port this field denotes the speed. PhysicalPortSpeed *int `json:"physical_port_speed,omitempty"` // ServiceProvider The name of the provider providing the service. // ServiceProvider *string `json:"service_provider,omitempty"` // DowngradeAllowed Indicates if the service can be migrated to // a lower bandwidth. DowngradeAllowed *bool `json:"downgrade_allowed,omitempty"` // UpgradeAllowed Indicates if the service can be migrated to // a higher bandwidth. UpgradeAllowed *bool `json:"upgrade_allowed,omitempty"` // OrderableNotBefore This product offering becomes available for ordering after // this point in time. OrderableNotBefore *time.Time `json:"orderable_not_before,omitempty"` // OrderableNotAfter This product offering will become unavailable for ordering after // this point in time. OrderableNotAfter *time.Time `json:"orderable_not_after,omitempty"` // ContractTerms The contract terms informally describe the contract period and // renewals. // ContractTerms *string `json:"contract_terms,omitempty"` // NoticePeriod The notice period informally states constraints // which define when the client needs to inform the // IXP in order to prevent renewal of the contract. // NoticePeriod *string `json:"notice_period,omitempty"` // ProviderVLANs The `NetworkService` provides `single` or `multi`ple vlans. ProviderVLANs *string `json:"provider_vlans,omitempty"` // ServiceMetroAreaNetwork Id of the `MetroAreaNetwork`. // The service is directly provided on the metro area network. // // In case of a `p2p_vc`, the `service_metro_area_network` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroAreaNetwork *string `json:"service_metro_area_network,omitempty"` // ServiceMetroArea Id of the `MetroArea`. The service is delivered // in this metro area. // // In case of a `p2p_vc`, the `service_metro_area` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroArea *string `json:"service_metro_area,omitempty"` // BandwidthMin When configuring access to the network service, at least // this `capacity` must be provided. BandwidthMin *int `json:"bandwidth_min,omitempty"` // BandwidthMax When not `null`, this value enforces a mandatory // rate limit for all network service configs. BandwidthMax *int `json:"bandwidth_max,omitempty"` }
P2MPNetworkProductOfferingPatch P2MP Network Product Offering
func (P2MPNetworkProductOfferingPatch) PolymorphicType ¶
func (p P2MPNetworkProductOfferingPatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2MPNetworkService ¶
type P2MPNetworkService struct { // Type is a type Type string `json:"type,omitempty"` // State is a state State string `json:"state,omitempty"` // Status is a status Status []*Status `json:"status,omitempty"` // ID is a id ID string `json:"id,omitempty"` // NscRequiredContactRoles The configuration will require at least one of each of the // specified roles assigned to contacts. // // The `RoleAssignment` is associated through the // `role_assignments` list property of the network service configuration. NscRequiredContactRoles []string `json:"nsc_required_contact_roles,omitempty"` // ProductOffering is a product_offering ProductOffering string `json:"product_offering,omitempty"` // NscProductOfferings An optional list of `ProductOffering`s which can be used in the // network service configs for this service. NscProductOfferings []string `json:"nsc_product_offerings,omitempty"` // DecommissionAt The service will be decommissioned on this date. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. DecommissionAt *Date `json:"decommission_at,omitempty"` // ChargedUntil The service continues incurring charges until this date. // Typically `≥ decommission_at`. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. // // *(Sensitive Property)* ChargedUntil *Date `json:"charged_until,omitempty"` // CurrentBillingStartDate Your obligation to pay for the service will start on this date. // // However, this date may change after an upgrade and not reflect // the inital start date of the service. // // *(Sensitive Property)* CurrentBillingStartDate *Date `json:"current_billing_start_date,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // DisplayName Name of the point to multi-point virtual circuit. // // It is visible to all parties allowed to connect // to this virtual circuit. // // It is intended for humans to make sense of. // DisplayName *string `json:"display_name,omitempty"` // Public A public p2mp network service can be joined // by everyone on the exchange unless denied by // a member-joining-rule. // // Public network services are visible to other // members of the IXP, however only `name`, `type`, // `product_offering`, `consuming_account` and // `managing_account` are made // available. // // Other required fields are redacted. Public *bool `json:"public,omitempty"` // NetworkFeatures is a network_features NetworkFeatures []string `json:"network_features,omitempty"` // MemberJoiningRules is a member_joining_rules MemberJoiningRules []string `json:"member_joining_rules,omitempty"` }
P2MPNetworkService P2MP Network Service
func (P2MPNetworkService) PolymorphicType ¶
func (p P2MPNetworkService) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2MPNetworkServiceConfig ¶
type P2MPNetworkServiceConfig struct { // Type is a type Type string `json:"type,omitempty"` // ProductOffering An optional id of a `ProductOffering`. // // Valid ids of product-offerings can be found in the // `nsc_product_offerings` property of the `NetworkService`. ProductOffering *string `json:"product_offering,omitempty"` // Capacity The capacity of the service in Mbps. If set to Null, // the maximum capacity will be used, i.e. the virtual circuit is // not rate-limited. // // An exchange may choose to constrain the available capacity range // of a `ProductOffering`. // // That means, the service can consume up to the total bandwidth // of the `Connection`. // // Typically the service is charged based on the capacity. Capacity *int `json:"capacity,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // VLANConfig is a polymorphic vlan configuration VLANConfig VLANConfig `tf:"vlan_config" json:"-"` // VLANConfigRaw contains the vlan config response data VLANConfigRaw json.RawMessage `tf:"-" json:"vlan_config,omitempty"` // Role A `leaf` can only reach roots and is // isolated from other leafs. A `root` can // reach any other point in the virtual circuit // including other roots. Role *string `json:"role,omitempty"` // State is a state State string `json:"state,omitempty"` // Status is a status Status []*Status `json:"status,omitempty"` // DecommissionAt The service will be decommissioned on this date. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. DecommissionAt *Date `json:"decommission_at,omitempty"` // ChargedUntil The service continues incurring charges until this date. // Typically `≥ decommission_at`. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. // // *(Sensitive Property)* ChargedUntil *Date `json:"charged_until,omitempty"` // CurrentBillingStartDate Your obligation to pay for the service will start on this date. // // However, this date may change after an upgrade and not reflect // the inital start date of the service. // // *(Sensitive Property)* CurrentBillingStartDate *Date `json:"current_billing_start_date,omitempty"` // ID is a id ID string `json:"id,omitempty"` // NetworkService The id of the configured network service. NetworkService string `json:"network_service,omitempty"` }
P2MPNetworkServiceConfig P2MP Network Service Config
func (P2MPNetworkServiceConfig) PolymorphicType ¶
func (p P2MPNetworkServiceConfig) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2MPNetworkServiceConfigPatch ¶
type P2MPNetworkServiceConfigPatch struct { // Type is a type Type string `json:"type,omitempty"` // ProductOffering An optional id of a `ProductOffering`. // // Valid ids of product-offerings can be found in the // `nsc_product_offerings` property of the `NetworkService`. ProductOffering *string `json:"product_offering,omitempty"` // Capacity The capacity of the service in Mbps. If set to Null, // the maximum capacity will be used, i.e. the virtual circuit is // not rate-limited. // // An exchange may choose to constrain the available capacity range // of a `ProductOffering`. // // That means, the service can consume up to the total bandwidth // of the `Connection`. // // Typically the service is charged based on the capacity. Capacity *int `json:"capacity,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount *string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount *string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount *string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection *string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // VLANConfig is a vlan_config VLANConfig VLANConfig `json:"vlan_config,omitempty"` // Role A `leaf` can only reach roots and is // isolated from other leafs. A `root` can // reach any other point in the virtual circuit // including other roots. Role *string `json:"role,omitempty"` }
P2MPNetworkServiceConfigPatch P2MP Network Service Config Update
func (P2MPNetworkServiceConfigPatch) PolymorphicType ¶
func (p P2MPNetworkServiceConfigPatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2MPNetworkServiceConfigRequest ¶
type P2MPNetworkServiceConfigRequest struct { // Type is a type Type string `json:"type,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // NetworkService The id of the `NetworkService` to configure. NetworkService string `json:"network_service,omitempty"` // ProductOffering An optional id of a `ProductOffering`. // // Valid ids of product-offerings can be found in the // `nsc_product_offerings` property of the `NetworkService`. ProductOffering *string `json:"product_offering,omitempty"` // Capacity The capacity of the service in Mbps. If set to Null, // the maximum capacity will be used, i.e. the virtual circuit is // not rate-limited. // // An exchange may choose to constrain the available capacity range // of a `ProductOffering`. // // That means, the service can consume up to the total bandwidth // of the `Connection`. // // Typically the service is charged based on the capacity. Capacity *int `json:"capacity,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // VLANConfig is a vlan_config VLANConfig VLANConfig `json:"vlan_config,omitempty"` // Role A `leaf` can only reach roots and is // isolated from other leafs. A `root` can // reach any other point in the virtual circuit // including other roots. Role *string `json:"role,omitempty"` }
P2MPNetworkServiceConfigRequest P2MP Network Service Config Request
func (P2MPNetworkServiceConfigRequest) PolymorphicType ¶
func (p P2MPNetworkServiceConfigRequest) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2MPNetworkServiceConfigUpdate ¶
type P2MPNetworkServiceConfigUpdate struct { // Type is a type Type string `json:"type,omitempty"` // ProductOffering An optional id of a `ProductOffering`. // // Valid ids of product-offerings can be found in the // `nsc_product_offerings` property of the `NetworkService`. ProductOffering *string `json:"product_offering,omitempty"` // Capacity The capacity of the service in Mbps. If set to Null, // the maximum capacity will be used, i.e. the virtual circuit is // not rate-limited. // // An exchange may choose to constrain the available capacity range // of a `ProductOffering`. // // That means, the service can consume up to the total bandwidth // of the `Connection`. // // Typically the service is charged based on the capacity. Capacity *int `json:"capacity,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // VLANConfig is a vlan_config VLANConfig VLANConfig `json:"vlan_config,omitempty"` // Role A `leaf` can only reach roots and is // isolated from other leafs. A `root` can // reach any other point in the virtual circuit // including other roots. Role *string `json:"role,omitempty"` }
P2MPNetworkServiceConfigUpdate P2MP Network Service Config Update
func (P2MPNetworkServiceConfigUpdate) PolymorphicType ¶
func (p P2MPNetworkServiceConfigUpdate) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2MPNetworkServicePatch ¶
type P2MPNetworkServicePatch struct { // Type is a type Type string `json:"type,omitempty"` // ProductOffering is a product_offering ProductOffering *string `json:"product_offering,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount *string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount *string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount *string `json:"billing_account,omitempty"` // DisplayName Name of the point to multi-point virtual circuit. // // It is visible to all parties allowed to connect // to this virtual circuit. // // It is intended for humans to make sense of. // DisplayName *string `json:"display_name,omitempty"` // Public A public p2mp network service can be joined // by everyone on the exchange unless denied by // a member-joining-rule. // // Public network services are visible to other // members of the IXP, however only `name`, `type`, // `product_offering`, `consuming_account` and // `managing_account` are made // available. // // Other required fields are redacted. Public *bool `json:"public,omitempty"` }
P2MPNetworkServicePatch P2MP Network Service Update
func (P2MPNetworkServicePatch) PolymorphicType ¶
func (p P2MPNetworkServicePatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2MPNetworkServiceRequest ¶
type P2MPNetworkServiceRequest struct { // Type is a type Type string `json:"type,omitempty"` // ProductOffering is a product_offering ProductOffering string `json:"product_offering,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // DisplayName Name of the point to multi-point virtual circuit. // // It is visible to all parties allowed to connect // to this virtual circuit. // // It is intended for humans to make sense of. // DisplayName *string `json:"display_name,omitempty"` // Public A public p2mp network service can be joined // by everyone on the exchange unless denied by // a member-joining-rule. // // Public network services are visible to other // members of the IXP, however only `name`, `type`, // `product_offering`, `consuming_account` and // `managing_account` are made // available. // // Other required fields are redacted. Public *bool `json:"public,omitempty"` }
P2MPNetworkServiceRequest P2MP Network Service Request
func (P2MPNetworkServiceRequest) PolymorphicType ¶
func (p P2MPNetworkServiceRequest) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2MPNetworkServiceUpdate ¶
type P2MPNetworkServiceUpdate struct { // Type is a type Type string `json:"type,omitempty"` // ProductOffering is a product_offering ProductOffering string `json:"product_offering,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // DisplayName Name of the point to multi-point virtual circuit. // // It is visible to all parties allowed to connect // to this virtual circuit. // // It is intended for humans to make sense of. // DisplayName *string `json:"display_name,omitempty"` // Public A public p2mp network service can be joined // by everyone on the exchange unless denied by // a member-joining-rule. // // Public network services are visible to other // members of the IXP, however only `name`, `type`, // `product_offering`, `consuming_account` and // `managing_account` are made // available. // // Other required fields are redacted. Public *bool `json:"public,omitempty"` }
P2MPNetworkServiceUpdate P2MP Network Service Update
func (P2MPNetworkServiceUpdate) PolymorphicType ¶
func (p P2MPNetworkServiceUpdate) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2PNetworkProductOffering ¶
type P2PNetworkProductOffering struct { // Type is a type Type string `json:"type,omitempty"` // ID is a id ID string `json:"id,omitempty"` // Name Name of the product Name string `json:"name,omitempty"` // DisplayName is a display_name DisplayName string `json:"display_name,omitempty"` // ExchangeLogo An URI referencing the logo of the internet exchange. // ExchangeLogo *string `json:"exchange_logo,omitempty"` // ServiceProviderLogo An URI referencing the logo of the service provider. // ServiceProviderLogo *string `json:"service_provider_logo,omitempty"` // ProductLogo An URI referencing a logo for the product offered. // ProductLogo *string `json:"product_logo,omitempty"` // ResourceType The resource type refers to an ix-api resource. // ResourceType string `json:"resource_type,omitempty"` // HandoverMetroAreaNetwork Id of the `MetroAreaNetwork`. The service will be accessed // through the handover metro area network. // // In case of a `p2p_vc`, the `handover_metro_area_network` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroAreaNetwork string `json:"handover_metro_area_network,omitempty"` // HandoverMetroArea Id of the `MetroArea`. The network service will be // accessed from this metro area. // // In case of a `p2p_vc`, the `handover_metro_area` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroArea string `json:"handover_metro_area,omitempty"` // PhysicalPortSpeed If the service is dependent on the speed of // the physical port this field denotes the speed. PhysicalPortSpeed int `json:"physical_port_speed,omitempty"` // ServiceProvider The name of the provider providing the service. // ServiceProvider string `json:"service_provider,omitempty"` // DowngradeAllowed Indicates if the service can be migrated to // a lower bandwidth. DowngradeAllowed bool `json:"downgrade_allowed,omitempty"` // UpgradeAllowed Indicates if the service can be migrated to // a higher bandwidth. UpgradeAllowed bool `json:"upgrade_allowed,omitempty"` // OrderableNotBefore This product offering becomes available for ordering after // this point in time. OrderableNotBefore *time.Time `json:"orderable_not_before,omitempty"` // OrderableNotAfter This product offering will become unavailable for ordering after // this point in time. OrderableNotAfter *time.Time `json:"orderable_not_after,omitempty"` // ContractTerms The contract terms informally describe the contract period and // renewals. // ContractTerms *string `json:"contract_terms,omitempty"` // NoticePeriod The notice period informally states constraints // which define when the client needs to inform the // IXP in order to prevent renewal of the contract. // NoticePeriod *string `json:"notice_period,omitempty"` // ProviderVLANs The `NetworkService` provides `single` or `multi`ple vlans. ProviderVLANs string `json:"provider_vlans,omitempty"` // ServiceMetroAreaNetwork Id of the `MetroAreaNetwork`. // The service is directly provided on the metro area network. // // In case of a `p2p_vc`, the `service_metro_area_network` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroAreaNetwork string `json:"service_metro_area_network,omitempty"` // ServiceMetroArea Id of the `MetroArea`. The service is delivered // in this metro area. // // In case of a `p2p_vc`, the `service_metro_area` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroArea string `json:"service_metro_area,omitempty"` // BandwidthMin When configuring access to the network service, at least // this `capacity` must be provided. BandwidthMin int `json:"bandwidth_min,omitempty"` // BandwidthMax When not `null`, this value enforces a mandatory // rate limit for all network service configs. BandwidthMax int `json:"bandwidth_max,omitempty"` }
P2PNetworkProductOffering P2P Network Product Offering
func (P2PNetworkProductOffering) PolymorphicType ¶
func (p P2PNetworkProductOffering) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2PNetworkProductOfferingPatch ¶
type P2PNetworkProductOfferingPatch struct { // Type is a type Type string `json:"type,omitempty"` // ID is a id ID *string `json:"id,omitempty"` // Name Name of the product Name *string `json:"name,omitempty"` // DisplayName is a display_name DisplayName *string `json:"display_name,omitempty"` // ExchangeLogo An URI referencing the logo of the internet exchange. // ExchangeLogo *string `json:"exchange_logo,omitempty"` // ServiceProviderLogo An URI referencing the logo of the service provider. // ServiceProviderLogo *string `json:"service_provider_logo,omitempty"` // ProductLogo An URI referencing a logo for the product offered. // ProductLogo *string `json:"product_logo,omitempty"` // ResourceType The resource type refers to an ix-api resource. // ResourceType *string `json:"resource_type,omitempty"` // HandoverMetroAreaNetwork Id of the `MetroAreaNetwork`. The service will be accessed // through the handover metro area network. // // In case of a `p2p_vc`, the `handover_metro_area_network` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroAreaNetwork *string `json:"handover_metro_area_network,omitempty"` // HandoverMetroArea Id of the `MetroArea`. The network service will be // accessed from this metro area. // // In case of a `p2p_vc`, the `handover_metro_area` refers // to the A-side of the point-to-point connection. // The A-side is the entity which initiates the network service creation. // HandoverMetroArea *string `json:"handover_metro_area,omitempty"` // PhysicalPortSpeed If the service is dependent on the speed of // the physical port this field denotes the speed. PhysicalPortSpeed *int `json:"physical_port_speed,omitempty"` // ServiceProvider The name of the provider providing the service. // ServiceProvider *string `json:"service_provider,omitempty"` // DowngradeAllowed Indicates if the service can be migrated to // a lower bandwidth. DowngradeAllowed *bool `json:"downgrade_allowed,omitempty"` // UpgradeAllowed Indicates if the service can be migrated to // a higher bandwidth. UpgradeAllowed *bool `json:"upgrade_allowed,omitempty"` // OrderableNotBefore This product offering becomes available for ordering after // this point in time. OrderableNotBefore *time.Time `json:"orderable_not_before,omitempty"` // OrderableNotAfter This product offering will become unavailable for ordering after // this point in time. OrderableNotAfter *time.Time `json:"orderable_not_after,omitempty"` // ContractTerms The contract terms informally describe the contract period and // renewals. // ContractTerms *string `json:"contract_terms,omitempty"` // NoticePeriod The notice period informally states constraints // which define when the client needs to inform the // IXP in order to prevent renewal of the contract. // NoticePeriod *string `json:"notice_period,omitempty"` // ProviderVLANs The `NetworkService` provides `single` or `multi`ple vlans. ProviderVLANs *string `json:"provider_vlans,omitempty"` // ServiceMetroAreaNetwork Id of the `MetroAreaNetwork`. // The service is directly provided on the metro area network. // // In case of a `p2p_vc`, the `service_metro_area_network` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroAreaNetwork *string `json:"service_metro_area_network,omitempty"` // ServiceMetroArea Id of the `MetroArea`. The service is delivered // in this metro area. // // In case of a `p2p_vc`, the `service_metro_area` refers // to the B-side of the point-to-point connection. // The B-side is the accepting party. // ServiceMetroArea *string `json:"service_metro_area,omitempty"` // BandwidthMin When configuring access to the network service, at least // this `capacity` must be provided. BandwidthMin *int `json:"bandwidth_min,omitempty"` // BandwidthMax When not `null`, this value enforces a mandatory // rate limit for all network service configs. BandwidthMax *int `json:"bandwidth_max,omitempty"` }
P2PNetworkProductOfferingPatch P2P Network Product Offering
func (P2PNetworkProductOfferingPatch) PolymorphicType ¶
func (p P2PNetworkProductOfferingPatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2PNetworkService ¶
type P2PNetworkService struct { // Type is a type Type string `json:"type,omitempty"` // State is a state State string `json:"state,omitempty"` // Status is a status Status []*Status `json:"status,omitempty"` // ID is a id ID string `json:"id,omitempty"` // NscRequiredContactRoles The configuration will require at least one of each of the // specified roles assigned to contacts. // // The `RoleAssignment` is associated through the // `role_assignments` list property of the network service configuration. NscRequiredContactRoles []string `json:"nsc_required_contact_roles,omitempty"` // ProductOffering is a product_offering ProductOffering string `json:"product_offering,omitempty"` // NscProductOfferings An optional list of `ProductOffering`s which can be used in the // network service configs for this service. NscProductOfferings []string `json:"nsc_product_offerings,omitempty"` // DecommissionAt The service will be decommissioned on this date. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. DecommissionAt *Date `json:"decommission_at,omitempty"` // ChargedUntil The service continues incurring charges until this date. // Typically `≥ decommission_at`. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. // // *(Sensitive Property)* ChargedUntil *Date `json:"charged_until,omitempty"` // CurrentBillingStartDate Your obligation to pay for the service will start on this date. // // However, this date may change after an upgrade and not reflect // the inital start date of the service. // // *(Sensitive Property)* CurrentBillingStartDate *Date `json:"current_billing_start_date,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // DisplayName Name of the point to point virtual circuit. // // It is visible to all parties allowed to connect // to this virtual circuit. // // It is intended for humans to make sense of. // DisplayName *string `json:"display_name,omitempty"` // JoiningMemberAccount The account of the B-side member joining the virtual circuit. // JoiningMemberAccount string `json:"joining_member_account,omitempty"` // Capacity The capacity of the service in Mbps. When null, // the maximum capacity will be used. Capacity *int `json:"capacity,omitempty"` }
P2PNetworkService P2P Network Service
func (P2PNetworkService) PolymorphicType ¶
func (p P2PNetworkService) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2PNetworkServiceConfig ¶
type P2PNetworkServiceConfig struct { // Type is a type Type string `json:"type,omitempty"` // State is a state State string `json:"state,omitempty"` // Status is a status Status []*Status `json:"status,omitempty"` // DecommissionAt The service will be decommissioned on this date. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. DecommissionAt *Date `json:"decommission_at,omitempty"` // ChargedUntil The service continues incurring charges until this date. // Typically `≥ decommission_at`. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. // // *(Sensitive Property)* ChargedUntil *Date `json:"charged_until,omitempty"` // CurrentBillingStartDate Your obligation to pay for the service will start on this date. // // However, this date may change after an upgrade and not reflect // the inital start date of the service. // // *(Sensitive Property)* CurrentBillingStartDate *Date `json:"current_billing_start_date,omitempty"` // ID is a id ID string `json:"id,omitempty"` // NetworkService The id of the configured network service. NetworkService string `json:"network_service,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // VLANConfig is a polymorphic vlan configuration VLANConfig VLANConfig `tf:"vlan_config" json:"-"` // VLANConfigRaw contains the vlan config response data VLANConfigRaw json.RawMessage `tf:"-" json:"vlan_config,omitempty"` // ProductOffering An optional id of a `ProductOffering`. // // Valid ids of product-offerings can be found in the // `nsc_product_offerings` property of the `NetworkService`. ProductOffering *string `json:"product_offering,omitempty"` // Capacity The capacity of the service in Mbps. If set to Null, // the maximum capacity will be used, i.e. the virtual circuit is // not rate-limited. // // An exchange may choose to constrain the available capacity range // of a `ProductOffering`. // // That means, the service can consume up to the total bandwidth // of the `Connection`. // // Typically the service is charged based on the capacity. Capacity *int `json:"capacity,omitempty"` }
P2PNetworkServiceConfig P2P Network Service Config
func (P2PNetworkServiceConfig) PolymorphicType ¶
func (p P2PNetworkServiceConfig) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2PNetworkServiceConfigPatch ¶
type P2PNetworkServiceConfigPatch struct { // Type is a type Type string `json:"type,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount *string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount *string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // VLANConfig is a vlan_config VLANConfig VLANConfig `json:"vlan_config,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount *string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection *string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // ProductOffering An optional id of a `ProductOffering`. // // Valid ids of product-offerings can be found in the // `nsc_product_offerings` property of the `NetworkService`. ProductOffering *string `json:"product_offering,omitempty"` // Capacity The capacity of the service in Mbps. If set to Null, // the maximum capacity will be used, i.e. the virtual circuit is // not rate-limited. // // An exchange may choose to constrain the available capacity range // of a `ProductOffering`. // // That means, the service can consume up to the total bandwidth // of the `Connection`. // // Typically the service is charged based on the capacity. Capacity *int `json:"capacity,omitempty"` }
P2PNetworkServiceConfigPatch P2P Network Service Config Update
func (P2PNetworkServiceConfigPatch) PolymorphicType ¶
func (p P2PNetworkServiceConfigPatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2PNetworkServiceConfigRequest ¶
type P2PNetworkServiceConfigRequest struct { // Type is a type Type string `json:"type,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // NetworkService The id of the `NetworkService` to configure. NetworkService string `json:"network_service,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // VLANConfig is a vlan_config VLANConfig VLANConfig `json:"vlan_config,omitempty"` // ProductOffering An optional id of a `ProductOffering`. // // Valid ids of product-offerings can be found in the // `nsc_product_offerings` property of the `NetworkService`. ProductOffering *string `json:"product_offering,omitempty"` // Capacity The capacity of the service in Mbps. If set to Null, // the maximum capacity will be used, i.e. the virtual circuit is // not rate-limited. // // An exchange may choose to constrain the available capacity range // of a `ProductOffering`. // // That means, the service can consume up to the total bandwidth // of the `Connection`. // // Typically the service is charged based on the capacity. Capacity *int `json:"capacity,omitempty"` }
P2PNetworkServiceConfigRequest P2P Network Service Config Request
func (P2PNetworkServiceConfigRequest) PolymorphicType ¶
func (p P2PNetworkServiceConfigRequest) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2PNetworkServiceConfigUpdate ¶
type P2PNetworkServiceConfigUpdate struct { // Type is a type Type string `json:"type,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // VLANConfig is a vlan_config VLANConfig VLANConfig `json:"vlan_config,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection The id of the connection to use for this `NetworkServiceConfig`. Connection string `json:"connection,omitempty"` // NetworkFeatureConfigs A list of ids of `NetworkFeatureConfig`s. // NetworkFeatureConfigs []string `json:"network_feature_configs,omitempty"` // ProductOffering An optional id of a `ProductOffering`. // // Valid ids of product-offerings can be found in the // `nsc_product_offerings` property of the `NetworkService`. ProductOffering *string `json:"product_offering,omitempty"` // Capacity The capacity of the service in Mbps. If set to Null, // the maximum capacity will be used, i.e. the virtual circuit is // not rate-limited. // // An exchange may choose to constrain the available capacity range // of a `ProductOffering`. // // That means, the service can consume up to the total bandwidth // of the `Connection`. // // Typically the service is charged based on the capacity. Capacity *int `json:"capacity,omitempty"` }
P2PNetworkServiceConfigUpdate P2P Network Service Config Update
func (P2PNetworkServiceConfigUpdate) PolymorphicType ¶
func (p P2PNetworkServiceConfigUpdate) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2PNetworkServicePatch ¶
type P2PNetworkServicePatch struct { // Type is a type Type string `json:"type,omitempty"` // ProductOffering is a product_offering ProductOffering *string `json:"product_offering,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount *string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount *string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount *string `json:"billing_account,omitempty"` // DisplayName Name of the point to point virtual circuit. // // It is visible to all parties allowed to connect // to this virtual circuit. // // It is intended for humans to make sense of. // DisplayName *string `json:"display_name,omitempty"` // JoiningMemberAccount The account of the B-side member joining the virtual circuit. // JoiningMemberAccount *string `json:"joining_member_account,omitempty"` }
P2PNetworkServicePatch P2P Network Service Update
func (P2PNetworkServicePatch) PolymorphicType ¶
func (p P2PNetworkServicePatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2PNetworkServiceRequest ¶
type P2PNetworkServiceRequest struct { // Type is a type Type string `json:"type,omitempty"` // ProductOffering is a product_offering ProductOffering string `json:"product_offering,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // DisplayName Name of the point to point virtual circuit. // // It is visible to all parties allowed to connect // to this virtual circuit. // // It is intended for humans to make sense of. // DisplayName *string `json:"display_name,omitempty"` // JoiningMemberAccount The account of the B-side member joining the virtual circuit. // JoiningMemberAccount string `json:"joining_member_account,omitempty"` }
P2PNetworkServiceRequest P2P Network Service Request
func (P2PNetworkServiceRequest) PolymorphicType ¶
func (p P2PNetworkServiceRequest) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type P2PNetworkServiceUpdate ¶
type P2PNetworkServiceUpdate struct { // Type is a type Type string `json:"type,omitempty"` // ProductOffering is a product_offering ProductOffering string `json:"product_offering,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // DisplayName Name of the point to point virtual circuit. // // It is visible to all parties allowed to connect // to this virtual circuit. // // It is intended for humans to make sense of. // DisplayName *string `json:"display_name,omitempty"` // JoiningMemberAccount The account of the B-side member joining the virtual circuit. // JoiningMemberAccount string `json:"joining_member_account,omitempty"` }
P2PNetworkServiceUpdate P2P Network Service Update
func (P2PNetworkServiceUpdate) PolymorphicType ¶
func (p P2PNetworkServiceUpdate) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PermissionError ¶
type PermissionError struct {
ProblemResponse
}
PermissionError indicates that insufficient rights were given, when trying to access a resource.
func AsErrPermissionDenied ¶
func AsErrPermissionDenied(err error) *PermissionError
AsErrPermissionDenied tries to convert the error into a PermissionError
type PointOfPresence ¶
type PointOfPresence struct { // Name is a name Name string `json:"name,omitempty"` // Facility The pop is located in this `Facility`. Facility string `json:"facility,omitempty"` // MetroAreaNetwork is a metro_area_network MetroAreaNetwork string `json:"metro_area_network,omitempty"` // Devices is a devices Devices []string `json:"devices,omitempty"` // ID is a id ID string `json:"id,omitempty"` }
PointOfPresence Point Of Presence
type Polymorphic ¶
type Polymorphic interface {
PolymorphicType() string
}
Polymorphic indicates that the type is polymorphic.
type PolymorphicMemberJoiningRule ¶
type PolymorphicMemberJoiningRule struct {
Type string `json:"type"`
}
PolymorphicMemberJoiningRule is a polymorphic base
func (PolymorphicMemberJoiningRule) PolymorphicType ¶
func (m PolymorphicMemberJoiningRule) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicMemberJoiningRulePatch ¶
type PolymorphicMemberJoiningRulePatch struct {
Type string `json:"type"`
}
PolymorphicMemberJoiningRulePatch is a polymorphic base
func (PolymorphicMemberJoiningRulePatch) PolymorphicType ¶
func (m PolymorphicMemberJoiningRulePatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicMemberJoiningRuleRequest ¶
type PolymorphicMemberJoiningRuleRequest struct {
Type string `json:"type"`
}
PolymorphicMemberJoiningRuleRequest is a polymorphic base
func (PolymorphicMemberJoiningRuleRequest) PolymorphicType ¶
func (m PolymorphicMemberJoiningRuleRequest) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicMemberJoiningRuleUpdate ¶
type PolymorphicMemberJoiningRuleUpdate struct {
Type string `json:"type"`
}
PolymorphicMemberJoiningRuleUpdate is a polymorphic base
func (PolymorphicMemberJoiningRuleUpdate) PolymorphicType ¶
func (m PolymorphicMemberJoiningRuleUpdate) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicNetworkFeature ¶
type PolymorphicNetworkFeature struct {
Type string `json:"type"`
}
PolymorphicNetworkFeature is a polymorphic base
func (PolymorphicNetworkFeature) PolymorphicType ¶
func (n PolymorphicNetworkFeature) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicNetworkFeatureConfig ¶
type PolymorphicNetworkFeatureConfig struct {
Type string `json:"type"`
}
PolymorphicNetworkFeatureConfig is a polymorphic base
func (PolymorphicNetworkFeatureConfig) PolymorphicType ¶
func (n PolymorphicNetworkFeatureConfig) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicNetworkFeatureConfigPatch ¶
type PolymorphicNetworkFeatureConfigPatch struct {
Type string `json:"type"`
}
PolymorphicNetworkFeatureConfigPatch is a polymorphic base
func (PolymorphicNetworkFeatureConfigPatch) PolymorphicType ¶
func (n PolymorphicNetworkFeatureConfigPatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicNetworkFeatureConfigRequest ¶
type PolymorphicNetworkFeatureConfigRequest struct {
Type string `json:"type"`
}
PolymorphicNetworkFeatureConfigRequest is a polymorphic base
func (PolymorphicNetworkFeatureConfigRequest) PolymorphicType ¶
func (n PolymorphicNetworkFeatureConfigRequest) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicNetworkFeatureConfigUpdate ¶
type PolymorphicNetworkFeatureConfigUpdate struct {
Type string `json:"type"`
}
PolymorphicNetworkFeatureConfigUpdate is a polymorphic base
func (PolymorphicNetworkFeatureConfigUpdate) PolymorphicType ¶
func (n PolymorphicNetworkFeatureConfigUpdate) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicNetworkService ¶
type PolymorphicNetworkService struct {
Type string `json:"type"`
}
PolymorphicNetworkService is a polymorphic base
func (PolymorphicNetworkService) PolymorphicType ¶
func (n PolymorphicNetworkService) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicNetworkServiceConfig ¶
type PolymorphicNetworkServiceConfig struct {
Type string `json:"type"`
}
PolymorphicNetworkServiceConfig is a polymorphic base
func (PolymorphicNetworkServiceConfig) PolymorphicType ¶
func (n PolymorphicNetworkServiceConfig) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicNetworkServiceConfigPatch ¶
type PolymorphicNetworkServiceConfigPatch struct {
Type string `json:"type"`
}
PolymorphicNetworkServiceConfigPatch is a polymorphic base
func (PolymorphicNetworkServiceConfigPatch) PolymorphicType ¶
func (n PolymorphicNetworkServiceConfigPatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicNetworkServiceConfigRequest ¶
type PolymorphicNetworkServiceConfigRequest struct {
Type string `json:"type"`
}
PolymorphicNetworkServiceConfigRequest is a polymorphic base
func (PolymorphicNetworkServiceConfigRequest) PolymorphicType ¶
func (n PolymorphicNetworkServiceConfigRequest) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicNetworkServiceConfigUpdate ¶
type PolymorphicNetworkServiceConfigUpdate struct {
Type string `json:"type"`
}
PolymorphicNetworkServiceConfigUpdate is a polymorphic base
func (PolymorphicNetworkServiceConfigUpdate) PolymorphicType ¶
func (n PolymorphicNetworkServiceConfigUpdate) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicNetworkServiceDeleteResponse ¶
type PolymorphicNetworkServiceDeleteResponse struct {
Type string `json:"type"`
}
PolymorphicNetworkServiceDeleteResponse is a polymorphic base
func (PolymorphicNetworkServiceDeleteResponse) PolymorphicType ¶
func (n PolymorphicNetworkServiceDeleteResponse) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicNetworkServicePatch ¶
type PolymorphicNetworkServicePatch struct {
Type string `json:"type"`
}
PolymorphicNetworkServicePatch is a polymorphic base
func (PolymorphicNetworkServicePatch) PolymorphicType ¶
func (n PolymorphicNetworkServicePatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicNetworkServiceRequest ¶
type PolymorphicNetworkServiceRequest struct {
Type string `json:"type"`
}
PolymorphicNetworkServiceRequest is a polymorphic base
func (PolymorphicNetworkServiceRequest) PolymorphicType ¶
func (n PolymorphicNetworkServiceRequest) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicNetworkServiceUpdate ¶
type PolymorphicNetworkServiceUpdate struct {
Type string `json:"type"`
}
PolymorphicNetworkServiceUpdate is a polymorphic base
func (PolymorphicNetworkServiceUpdate) PolymorphicType ¶
func (n PolymorphicNetworkServiceUpdate) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicProductOffering ¶
type PolymorphicProductOffering struct {
Type string `json:"type"`
}
PolymorphicProductOffering is a polymorphic base
func (PolymorphicProductOffering) PolymorphicType ¶
func (p PolymorphicProductOffering) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicProductOfferingPatch ¶
type PolymorphicProductOfferingPatch struct {
Type string `json:"type"`
}
PolymorphicProductOfferingPatch is a polymorphic base
func (PolymorphicProductOfferingPatch) PolymorphicType ¶
func (p PolymorphicProductOfferingPatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PolymorphicVLANConfig ¶
type PolymorphicVLANConfig struct {
VLANType string `json:"vlan_type"`
}
PolymorphicVLANConfig is a polymorphic base
func (PolymorphicVLANConfig) PolymorphicType ¶
func (v PolymorphicVLANConfig) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type PopsListQuery ¶
type PopsListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // Facility is a facility Facility string `json:"facility,omitempty"` // MetroAreaNetwork is a metro_area_network MetroAreaNetwork string `json:"metro_area_network,omitempty"` // CapabilityMediaType is a capability_media_type CapabilityMediaType string `json:"capability_media_type,omitempty"` // CapabilitySpeed is a capability_speed CapabilitySpeed int `json:"capability_speed,omitempty"` // CapabilitySpeedLt is a capability_speed__lt CapabilitySpeedLt int `json:"capability_speed__lt,omitempty"` // CapabilitySpeedLte is a capability_speed__lte CapabilitySpeedLte int `json:"capability_speed__lte,omitempty"` // CapabilitySpeedGt is a capability_speed__gt CapabilitySpeedGt int `json:"capability_speed__gt,omitempty"` // CapabilitySpeedGte is a capability_speed__gte CapabilitySpeedGte int `json:"capability_speed__gte,omitempty"` }
PopsListQuery has all query parameters for PopsList
func (*PopsListQuery) RawQuery ¶
func (p *PopsListQuery) RawQuery() string
RawQuery creates a query string for PopsListQuery
type Port ¶
type Port struct { // State is a state State string `json:"state,omitempty"` // Status is a status Status []*Status `json:"status,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // Connection is a connection Connection *string `json:"connection,omitempty"` // Speed is a speed Speed *int `json:"speed,omitempty"` // ID is a id ID string `json:"id,omitempty"` // Name Name of the port (set by the exchange) Name *string `json:"name,omitempty"` // MediaType The media type of the port. // Query the device's capabilities for available types. // MediaType string `json:"media_type,omitempty"` // OperationalState The operational state of the port. OperationalState *string `json:"operational_state,omitempty"` // Device The device the port. // Device string `json:"device,omitempty"` // Pop Same as the `pop` of the `device`. // Pop string `json:"pop,omitempty"` }
Port Port
type PortReservation ¶
type PortReservation struct { // State is a state State string `json:"state,omitempty"` // Status is a status Status []*Status `json:"status,omitempty"` // DecommissionAt The service will be decommissioned on this date. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. DecommissionAt *Date `json:"decommission_at,omitempty"` // ChargedUntil The service continues incurring charges until this date. // Typically `≥ decommission_at`. // // This field is only used when // the state is `DECOMMISSION_REQUESTED` or // `DECOMMISSIONED`. // // *(Sensitive Property)* ChargedUntil *Date `json:"charged_until,omitempty"` // CurrentBillingStartDate Your obligation to pay for the service will start on this date. // // However, this date may change after an upgrade and not reflect // the inital start date of the service. // // *(Sensitive Property)* CurrentBillingStartDate *Date `json:"current_billing_start_date,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // SubscriberSideDemarc In an exchange initiated scenario, this field will // indicated one of the provided `subscriber_side_demarcs` // from the connection. SubscriberSideDemarc *string `json:"subscriber_side_demarc,omitempty"` // ConnectingParty Name of the service provider who establishes // connectivity on your behalf. // // This is only relevant, if the cross connect initiator // is the `subscriber`. // // Please refer to the usage guide of the internet exchange. ConnectingParty *string `json:"connecting_party,omitempty"` // CrossConnectID An optional identifier of a cross connect. CrossConnectID *string `json:"cross_connect_id,omitempty"` // ID is a id ID string `json:"id,omitempty"` // Connection The `Port` will become part of this connection. Connection string `json:"connection,omitempty"` // ExchangeSideDemarc Exchange side demarc information. This field will only // be filled in when the port state is `allocated` or // in `production`. // // Otherwise this field will be `null`. ExchangeSideDemarc *string `json:"exchange_side_demarc,omitempty"` // Port This field will be null, until a port will // be allocated. Port *string `json:"port,omitempty"` }
PortReservation A PortReservation
type PortReservationCancellationPolicyQuery ¶
type PortReservationCancellationPolicyQuery struct { // DecommissionAt is a decommission_at DecommissionAt string `json:"decommission_at,omitempty"` }
PortReservationCancellationPolicyQuery has all query parameters for PortReservationCancellationPolicy
func (*PortReservationCancellationPolicyQuery) RawQuery ¶
func (p *PortReservationCancellationPolicyQuery) RawQuery() string
RawQuery creates a query string for PortReservationCancellationPolicyQuery
type PortReservationPatch ¶
type PortReservationPatch struct { // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // SubscriberSideDemarc In an exchange initiated scenario, this field will // indicated one of the provided `subscriber_side_demarcs` // from the connection. SubscriberSideDemarc *string `json:"subscriber_side_demarc,omitempty"` // ConnectingParty Name of the service provider who establishes // connectivity on your behalf. // // This is only relevant, if the cross connect initiator // is the `subscriber`. // // Please refer to the usage guide of the internet exchange. ConnectingParty *string `json:"connecting_party,omitempty"` // CrossConnectID An optional identifier of a cross connect. CrossConnectID *string `json:"cross_connect_id,omitempty"` }
PortReservationPatch PortReservation Update
type PortReservationRequest ¶
type PortReservationRequest struct { // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // SubscriberSideDemarc In an exchange initiated scenario, this field will // indicated one of the provided `subscriber_side_demarcs` // from the connection. SubscriberSideDemarc *string `json:"subscriber_side_demarc,omitempty"` // ConnectingParty Name of the service provider who establishes // connectivity on your behalf. // // This is only relevant, if the cross connect initiator // is the `subscriber`. // // Please refer to the usage guide of the internet exchange. ConnectingParty *string `json:"connecting_party,omitempty"` // CrossConnectID An optional identifier of a cross connect. CrossConnectID *string `json:"cross_connect_id,omitempty"` // Connection A connection is required for port allocation. Connection string `json:"connection,omitempty"` }
PortReservationRequest A PortReservation
type PortReservationUpdate ¶
type PortReservationUpdate struct { // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // SubscriberSideDemarc In an exchange initiated scenario, this field will // indicated one of the provided `subscriber_side_demarcs` // from the connection. SubscriberSideDemarc *string `json:"subscriber_side_demarc,omitempty"` // ConnectingParty Name of the service provider who establishes // connectivity on your behalf. // // This is only relevant, if the cross connect initiator // is the `subscriber`. // // Please refer to the usage guide of the internet exchange. ConnectingParty *string `json:"connecting_party,omitempty"` // CrossConnectID An optional identifier of a cross connect. CrossConnectID *string `json:"cross_connect_id,omitempty"` }
PortReservationUpdate PortReservation Update
type PortReservationsListQuery ¶
type PortReservationsListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // State is a state State string `json:"state,omitempty"` // StateIsNot is a state__is_not StateIsNot string `json:"state__is_not,omitempty"` // Connection is a connection Connection string `json:"connection,omitempty"` // Port is a port Port string `json:"port,omitempty"` // ExternalRef is a external_ref ExternalRef string `json:"external_ref,omitempty"` }
PortReservationsListQuery has all query parameters for PortReservationsList
func (*PortReservationsListQuery) RawQuery ¶
func (p *PortReservationsListQuery) RawQuery() string
RawQuery creates a query string for PortReservationsListQuery
type PortStatistics ¶
type PortStatistics struct { // Aggregates Aggregated statistics for a connection or service configuration // // For the **property name** the aggregate interval as a // string representation is used. For example: `5m`, `1d`, `30d`, // `1y`. // // If a window is defined via the `start` and `end` query parameter, // the **property name** will be `custom`. // // The available intervals can differ by implementation. // Aggregates map[string]interface{} `json:"aggregates,omitempty"` // LightLevelsTx A list of light levels in **dBm** for each channel. // LightLevelsTx []float64 `json:"light_levels_tx,omitempty"` // LightLevelsRx A list of light levels in **dBm** for each channel. // LightLevelsRx []float64 `json:"light_levels_rx,omitempty"` }
PortStatistics Port Statistics
type PortsListQuery ¶
type PortsListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // State is a state State string `json:"state,omitempty"` // StateIsNot is a state__is_not StateIsNot string `json:"state__is_not,omitempty"` // MediaType is a media_type MediaType string `json:"media_type,omitempty"` // Pop is a pop Pop string `json:"pop,omitempty"` // Name is a name Name string `json:"name,omitempty"` // ExternalRef is a external_ref ExternalRef string `json:"external_ref,omitempty"` // Device is a device Device string `json:"device,omitempty"` // Speed is a speed Speed string `json:"speed,omitempty"` // Connection is a connection Connection string `json:"connection,omitempty"` }
PortsListQuery has all query parameters for PortsList
func (*PortsListQuery) RawQuery ¶
func (p *PortsListQuery) RawQuery() string
RawQuery creates a query string for PortsListQuery
type ProblemResponse ¶
type ProblemResponse struct { // Type A URI reference (see RFC3986) that identifies the // problem type. // // This specification encourages that, when // dereferenced, it provide human-readable documentation // for the problem type (e.g., using HTML // [W3C.REC-html5-20141028]). // // When this member is not present, its value is assumed // to be "about:blank". // Type string `json:"type,omitempty"` // Title A short, human-readable summary of the problem type. // // It SHOULD NOT change from occurrence to // occurrence of the problem, except for purposes // of localization (e.g., using proactive content // negotiation; see [RFC7231], Section 3.4). // Title string `json:"title,omitempty"` // Status The HTTP status code ([RFC7231], Section 6) // generated by the origin server for this occurrence // of the problem. Status int `json:"status,omitempty"` // Detail A human-readable explanation specific to this // occurrence of the problem. Detail string `json:"detail,omitempty"` // Instance A URI reference that identifies the specific // occurrence of the problem. It may or may not yield // further information if dereferenced. Instance string `json:"instance,omitempty"` }
ProblemResponse Encodes a problem into an appropriate response body.
func (ProblemResponse) Error ¶
func (p ProblemResponse) Error() string
Error implements the error interface for ProblemResponse
type ProductOffering ¶
type ProductOffering interface { Polymorphic }
ProductOffering Polymorphic Product Offering
type ProductOfferingPatch ¶
type ProductOfferingPatch interface { Polymorphic }
ProductOfferingPatch Polymorphic Product Offering
type ProductOfferingsListQuery ¶
type ProductOfferingsListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // Type is a type Type string `json:"type,omitempty"` // ResourceType is a resource_type ResourceType string `json:"resource_type,omitempty"` // Name is a name Name string `json:"name,omitempty"` // HandoverMetroArea is a handover_metro_area HandoverMetroArea string `json:"handover_metro_area,omitempty"` // HandoverMetroAreaNetwork is a handover_metro_area_network HandoverMetroAreaNetwork string `json:"handover_metro_area_network,omitempty"` // HandoverPop is a handover_pop HandoverPop string `json:"handover_pop,omitempty"` // ServiceMetroArea is a service_metro_area ServiceMetroArea string `json:"service_metro_area,omitempty"` // ServiceMetroAreaNetwork is a service_metro_area_network ServiceMetroAreaNetwork string `json:"service_metro_area_network,omitempty"` // ServiceProvider is a service_provider ServiceProvider string `json:"service_provider,omitempty"` // DowngradeAllowed is a downgrade_allowed DowngradeAllowed string `json:"downgrade_allowed,omitempty"` // UpgradeAllowed is a upgrade_allowed UpgradeAllowed string `json:"upgrade_allowed,omitempty"` // Bandwidth is a bandwidth Bandwidth int `json:"bandwidth,omitempty"` // PhysicalPortSpeed is a physical_port_speed PhysicalPortSpeed int `json:"physical_port_speed,omitempty"` // ServiceProviderRegion is a service_provider_region ServiceProviderRegion string `json:"service_provider_region,omitempty"` // ServiceProviderPop is a service_provider_pop ServiceProviderPop string `json:"service_provider_pop,omitempty"` // DeliveryMethod is a delivery_method DeliveryMethod string `json:"delivery_method,omitempty"` // CloudKey is a cloud_key CloudKey string `json:"cloud_key,omitempty"` // Fields is a fields Fields string `json:"fields,omitempty"` }
ProductOfferingsListQuery has all query parameters for ProductOfferingsList
func (*ProductOfferingsListQuery) RawQuery ¶
func (p *ProductOfferingsListQuery) RawQuery() string
RawQuery creates a query string for ProductOfferingsListQuery
type RefreshTokenRequest ¶
type RefreshTokenRequest struct { // RefreshToken is a refresh_token RefreshToken string `json:"refresh_token,omitempty"` }
RefreshTokenRequest RefreshTokenRequest
type Role ¶
type Role struct { // Name The name of the role. // Name string `json:"name,omitempty"` // RequiredFields A list of required field names. // RequiredFields []string `json:"required_fields,omitempty"` // ID is a id ID string `json:"id,omitempty"` }
Role Role for a Contact
type RoleAssignment ¶
type RoleAssignment struct { // Role The `id` of a role the contact is assigned to. // Role string `json:"role,omitempty"` // Contact The `id` of a contact the role is assigned to. // Contact string `json:"contact,omitempty"` // ID is a id ID string `json:"id,omitempty"` }
RoleAssignment A role assignment for a contact
type RoleAssignmentPatch ¶
type RoleAssignmentPatch struct { // Role The `id` of a role the contact is assigned to. // Role *string `json:"role,omitempty"` // Contact The `id` of a contact the role is assigned to. // Contact *string `json:"contact,omitempty"` }
RoleAssignmentPatch A role assignment update
type RoleAssignmentRequest ¶
type RoleAssignmentRequest struct { // Role The `id` of a role the contact is assigned to. // Role string `json:"role,omitempty"` // Contact The `id` of a contact the role is assigned to. // Contact string `json:"contact,omitempty"` }
RoleAssignmentRequest A role assignment request
type RoleAssignmentUpdate ¶
type RoleAssignmentUpdate struct { // Role The `id` of a role the contact is assigned to. // Role string `json:"role,omitempty"` // Contact The `id` of a contact the role is assigned to. // Contact string `json:"contact,omitempty"` }
RoleAssignmentUpdate A role assignemnt update
type RoleAssignmentsListQuery ¶
type RoleAssignmentsListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // Contact is a contact Contact string `json:"contact,omitempty"` // Role is a role Role string `json:"role,omitempty"` }
RoleAssignmentsListQuery has all query parameters for RoleAssignmentsList
func (*RoleAssignmentsListQuery) RawQuery ¶
func (r *RoleAssignmentsListQuery) RawQuery() string
RawQuery creates a query string for RoleAssignmentsListQuery
type RolePatch ¶
type RolePatch struct { // Name The name of the role. // Name *string `json:"name,omitempty"` // RequiredFields A list of required field names. // RequiredFields []string `json:"required_fields,omitempty"` }
RolePatch Role Update
type RoleRequest ¶
type RoleRequest struct { // Name The name of the role. // Name string `json:"name,omitempty"` // RequiredFields A list of required field names. // RequiredFields []string `json:"required_fields,omitempty"` }
RoleRequest Create Role
type RoleUpdate ¶
type RoleUpdate struct { // Name The name of the role. // Name string `json:"name,omitempty"` // RequiredFields A list of required field names. // RequiredFields []string `json:"required_fields,omitempty"` }
RoleUpdate Role Update
type RolesListQuery ¶
type RolesListQuery struct { // ID is a id ID []string `json:"id,omitempty"` // Name is a name Name string `json:"name,omitempty"` // Contact is a contact Contact string `json:"contact,omitempty"` }
RolesListQuery has all query parameters for RolesList
func (*RolesListQuery) RawQuery ¶
func (r *RolesListQuery) RawQuery() string
RawQuery creates a query string for RolesListQuery
type RouteServerNetworkFeature ¶
type RouteServerNetworkFeature struct { // Type is a type Type string `json:"type,omitempty"` // ID is a id ID string `json:"id,omitempty"` // Name is a name Name string `json:"name,omitempty"` // Required is a required Required bool `json:"required,omitempty"` // NfcRequiredContactRoles The configuration will require at least one of each of the // specified roles assigned to contacts. // // The role assignments is associated with the network feature // config through the `role_assignments` list property. NfcRequiredContactRoles []string `json:"nfc_required_contact_roles,omitempty"` // Flags A list of IXP specific feature flags. This can be used // to see if e.g. RPKI hard filtering is available. Flags []*IXPSpecificFeatureFlag `json:"flags,omitempty"` // NetworkService is a network_service NetworkService string `json:"network_service,omitempty"` // ASN is a asn ASN int `json:"asn,omitempty"` // FQDN The FQDN of the route server. // FQDN string `json:"fqdn,omitempty"` // LookingGlassURL The url of the looking glass. // LookingGlassURL *string `json:"looking_glass_url,omitempty"` // AddressFamilies When creating a route server feature config, remember // to specify which address family or families to use: // // If the route server network feature only supports `af_inet`, // then the `as_set_v4` in the network feature config is required. // // If only `af_inet6` is supported, then the `as_set_v6` is required. // // If both `af_inet` and `af_inet6` are supported, either // `as_set_v4` or `as_set_v6` is required, but both can be provided // in the network service config. // AddressFamilies []string `json:"address_families,omitempty"` // SessionMode When creating a route server feature config, remember // to specify the same session_mode as the route server. // SessionMode string `json:"session_mode,omitempty"` // AvailableBGPSessionTypes The route server provides the following session modes. // AvailableBGPSessionTypes []string `json:"available_bgp_session_types,omitempty"` // IPV4 IPv4 address in [dot-decimal notation](https://en.wikipedia.org/wiki/Dot-decimal_notation) // notation. // // This field is only set if the `address_families` include `af_inet`. // IPV4 *string `json:"ip_v4,omitempty"` // IPV6 IPv6 address in hexadecimal colon separated notation. // // This field is only set if the `address_families` include `af_inet6`. // IPV6 *string `json:"ip_v6,omitempty"` }
RouteServerNetworkFeature Route Server Network Feature
func (RouteServerNetworkFeature) PolymorphicType ¶
func (r RouteServerNetworkFeature) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type RouteServerNetworkFeatureConfig ¶
type RouteServerNetworkFeatureConfig struct { // Type is a type Type string `json:"type,omitempty"` // State is a state State string `json:"state,omitempty"` // Status is a status Status []*Status `json:"status,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // NetworkFeature is a network_feature NetworkFeature string `json:"network_feature,omitempty"` // NetworkServiceConfig is a network_service_config NetworkServiceConfig string `json:"network_service_config,omitempty"` // Flags A list of IXP specific feature flag configs. This can be used // to enable or disable a specific feature flag. Flags []*IXPSpecificFeatureFlagConfig `json:"flags,omitempty"` // ASN The ASN of the peer. // ASN int `json:"asn,omitempty"` // Password The cleartext BGP session password Password *string `json:"password,omitempty"` // AsSetV4 AS-SET of the customer for IPv4 prefix filtering. // This is used to generate filters on the router servers. // // Only valid referenced prefixes within the AS-SET // are allowed inbound to the route server. All other routes are // filtered. // // This field is *required* if the route server network feature only // supports the `af_inet` address family. // If multiple address families are supported, it is optional if the // `as_set_v6` is provided. // // Important: The format has to be: "AS-SET@IRR". IRR is the database // where the AS-SET is registred. Typically used IRR's are RADB, RIPE, // NTTCOM, APNIC, ALTDB, LEVEL3, ARIN, AFRINIC, LACNIC // AsSetV4 *string `json:"as_set_v4,omitempty"` // AsSetV6 AS-SET of the customer for IPv6. This is used to generate filters // on the router servers. Only valid referenced prefixes within // the AS-SET are allowed inbound to the route server. // All other routes are filtered. // // This field is *required* if the route server network feature only // supports the `af_inet6` address family. // If multiple address families are supported, it is optional if the // `as_set_v4` is provided. // // Important: The format has to be: "AS-SET@IRR". IRR is the database // where the AS-SET is registred. Typically used IRR's are RADB, RIPE, // NTTCOM, APNIC, ALTDB, LEVEL3, ARIN, AFRINIC, LACNIC // AsSetV6 *string `json:"as_set_v6,omitempty"` // MaxPrefixV4 Announcing more than `max_prefix` IPv4 prefixes the bgp // session will be droped. // MaxPrefixV4 *int `json:"max_prefix_v4,omitempty"` // MaxPrefixV6 Announcing more than `max_prefix` IPv6 prefixes the bgp // session will be droped. // MaxPrefixV6 *int `json:"max_prefix_v6,omitempty"` // InsertIxpASN Insert the ASN of the exchange into the AS path. This function is only // used in special cases. In 99% of all cases, it should be false. // InsertIxpASN *bool `json:"insert_ixp_asn,omitempty"` // SessionMode Set the session mode with the routeserver. // SessionMode string `json:"session_mode,omitempty"` // BGPSessionType The session type describes which of the both parties will open the // connection. If set to passive, the customer router needs to open // the connection. If its set to active, the route server will open // the connection. The standard behavior on most exchanges is passive. // BGPSessionType string `json:"bgp_session_type,omitempty"` // IP The BGP session will be established from this IP address, // referenced by ID. // // Only IDs of IPs assigned to the corresponding network service // config can be used. IP string `json:"ip,omitempty"` // ID is a id ID string `json:"id,omitempty"` }
RouteServerNetworkFeatureConfig Route Server Network Feature Config
func (RouteServerNetworkFeatureConfig) PolymorphicType ¶
func (r RouteServerNetworkFeatureConfig) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type RouteServerNetworkFeatureConfigPatch ¶
type RouteServerNetworkFeatureConfigPatch struct { // Type is a type Type string `json:"type,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount *string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount *string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // ASN The ASN of the peer. // ASN *int `json:"asn,omitempty"` // Password The cleartext BGP session password Password *string `json:"password,omitempty"` // AsSetV4 AS-SET of the customer for IPv4 prefix filtering. // This is used to generate filters on the router servers. // // Only valid referenced prefixes within the AS-SET // are allowed inbound to the route server. All other routes are // filtered. // // This field is *required* if the route server network feature only // supports the `af_inet` address family. // If multiple address families are supported, it is optional if the // `as_set_v6` is provided. // // Important: The format has to be: "AS-SET@IRR". IRR is the database // where the AS-SET is registred. Typically used IRR's are RADB, RIPE, // NTTCOM, APNIC, ALTDB, LEVEL3, ARIN, AFRINIC, LACNIC // AsSetV4 *string `json:"as_set_v4,omitempty"` // AsSetV6 AS-SET of the customer for IPv6. This is used to generate filters // on the router servers. Only valid referenced prefixes within // the AS-SET are allowed inbound to the route server. // All other routes are filtered. // // This field is *required* if the route server network feature only // supports the `af_inet6` address family. // If multiple address families are supported, it is optional if the // `as_set_v4` is provided. // // Important: The format has to be: "AS-SET@IRR". IRR is the database // where the AS-SET is registred. Typically used IRR's are RADB, RIPE, // NTTCOM, APNIC, ALTDB, LEVEL3, ARIN, AFRINIC, LACNIC // AsSetV6 *string `json:"as_set_v6,omitempty"` // MaxPrefixV4 Announcing more than `max_prefix` IPv4 prefixes the bgp // session will be droped. // MaxPrefixV4 *int `json:"max_prefix_v4,omitempty"` // MaxPrefixV6 Announcing more than `max_prefix` IPv6 prefixes the bgp // session will be droped. // MaxPrefixV6 *int `json:"max_prefix_v6,omitempty"` // InsertIxpASN Insert the ASN of the exchange into the AS path. This function is only // used in special cases. In 99% of all cases, it should be false. // InsertIxpASN *bool `json:"insert_ixp_asn,omitempty"` // SessionMode Set the session mode with the routeserver. // SessionMode *string `json:"session_mode,omitempty"` // BGPSessionType The session type describes which of the both parties will open the // connection. If set to passive, the customer router needs to open // the connection. If its set to active, the route server will open // the connection. The standard behavior on most exchanges is passive. // BGPSessionType *string `json:"bgp_session_type,omitempty"` // IP The BGP session will be established from this IP address, // referenced by ID. // // Only IDs of IPs assigned to the corresponding network service // config can be used. IP *string `json:"ip,omitempty"` }
RouteServerNetworkFeatureConfigPatch Route Server Network Feature Config Update
func (RouteServerNetworkFeatureConfigPatch) PolymorphicType ¶
func (r RouteServerNetworkFeatureConfigPatch) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type RouteServerNetworkFeatureConfigRequest ¶
type RouteServerNetworkFeatureConfigRequest struct { // Type is a type Type string `json:"type,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // PurchaseOrder Purchase Order ID which will be displayed on the invoice. // *(Sensitive Property)* // PurchaseOrder *string `json:"purchase_order,omitempty"` // ContractRef A reference to a contract. If no specific contract is used, // a default MAY be chosen by the implementer. // *(Sensitive Property)* // ContractRef *string `json:"contract_ref,omitempty"` // BillingAccount An account requires billing_information to be used as a `billing_account`. // *(Sensitive Property)* BillingAccount string `json:"billing_account,omitempty"` // RoleAssignments A set of `RoleAssignment`s. See the documentation // on the specific `required_contact_roles`, // `nfc_required_contact_roles` or `nsc_required_contact_roles` // on what `RoleAssignment`s to provide. // // Please note, that any contact role can additionally be provided. // The presence of at least one of each required contact roles // is necessary. // RoleAssignments []string `json:"role_assignments,omitempty"` // NetworkFeature is a network_feature NetworkFeature string `json:"network_feature,omitempty"` // NetworkServiceConfig is a network_service_config NetworkServiceConfig string `json:"network_service_config,omitempty"` // Flags A list of IXP specific feature flag configs. This can be used // to enable or disable a specific feature flag. Flags []*IXPSpecificFeatureFlagConfig `json:"flags,omitempty"` // ASN The ASN of the peer. // ASN int `json:"asn,omitempty"` // Password The cleartext BGP session password Password *string `json:"password,omitempty"` // AsSetV4 AS-SET of the customer for IPv4 prefix filtering. // This is used to generate filters on the router servers. // // Only valid referenced prefixes within the AS-SET // are allowed inbound to the route server. All other routes are // filtered. // // This field is *required* if the route server network feature only // supports the `af_inet` address family. // If multiple address families are supported, it is optional if the // `as_set_v6` is provided. // // Important: The format has to be: "AS-SET@IRR". IRR is the database // where the AS-SET is registred. Typically used IRR's are RADB, RIPE, // NTTCOM, APNIC, ALTDB, LEVEL3, ARIN, AFRINIC, LACNIC // AsSetV4 *string `json:"as_set_v4,omitempty"` // AsSetV6 AS-SET of the customer for IPv6. This is used to generate filters // on the router servers. Only valid referenced prefixes within // the AS-SET are allowed inbound to the route server. // All other routes are filtered. // // This field is *required* if the route server network feature only // supports the `af_inet6` address family. // If multiple address families are supported, it is optional if the // `as_set_v4` is provided. // // Important: The format has to be: "AS-SET@IRR". IRR is the database // where the AS-SET is registred. Typically used IRR's are RADB, RIPE, // NTTCOM, APNIC, ALTDB, LEVEL3, ARIN, AFRINIC, LACNIC // AsSetV6 *string `json:"as_set_v6,omitempty"` // MaxPrefixV4 Announcing more than `max_prefix` IPv4 prefixes the bgp // session will be droped. // MaxPrefixV4 *int `json:"max_prefix_v4,omitempty"` // MaxPrefixV6 Announcing more than `max_prefix` IPv6 prefixes the bgp // session will be droped. // MaxPrefixV6 *int `json:"max_prefix_v6,omitempty"` // InsertIxpASN Insert the ASN of the exchange into the AS path. This function is only // used in special cases. In 99% of all cases, it should be false. // InsertIxpASN *bool `json:"insert_ixp_asn,omitempty"` // SessionMode Set the session mode with the routeserver. // SessionMode string `json:"session_mode,omitempty"` // BGPSessionType The session type describes which of the both parties will open the // connection. If set to passive, the customer router needs to open // the connection. If its set to active, the route server will open // the connection. The standard behavior on most exchanges is passive. // BGPSessionType string `json:"bgp_session_type,omitempty"` // IP The BGP session will be established from this IP address, // referenced by ID. // // Only IDs of IPs assigned to the corresponding network service // config can be used. IP string `json:"ip,omitempty"` }
RouteServerNetworkFeatureConfigRequest Route Server Network Feature Config Request
func (RouteServerNetworkFeatureConfigRequest) PolymorphicType ¶
func (r RouteServerNetworkFeatureConfigRequest) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type RouteServerNetworkFeatureConfigUpdate ¶
type RouteServerNetworkFeatureConfigUpdate struct { // Type is a type Type string `json:"type,omitempty"` // ManagingAccount The `id` of the account responsible for managing the service via // the API. A manager can read and update the state of entities. // ManagingAccount string `json:"managing_account,omitempty"` // ConsumingAccount The `id` of the account consuming a service. // // Used to be `owning_customer`. // ConsumingAccount string `json:"consuming_account,omitempty"` // ExternalRef Reference field, free to use for the API user. // *(Sensitive Property)* // ExternalRef *string `json:"external_ref,omitempty"` // ASN The ASN of the peer. // ASN int `json:"asn,omitempty"` // Password The cleartext BGP session password Password *string `json:"password,omitempty"` // AsSetV4 AS-SET of the customer for IPv4 prefix filtering. // This is used to generate filters on the router servers. // // Only valid referenced prefixes within the AS-SET // are allowed inbound to the route server. All other routes are // filtered. // // This field is *required* if the route server network feature only // supports the `af_inet` address family. // If multiple address families are supported, it is optional if the // `as_set_v6` is provided. // // Important: The format has to be: "AS-SET@IRR". IRR is the database // where the AS-SET is registred. Typically used IRR's are RADB, RIPE, // NTTCOM, APNIC, ALTDB, LEVEL3, ARIN, AFRINIC, LACNIC // AsSetV4 *string `json:"as_set_v4,omitempty"` // AsSetV6 AS-SET of the customer for IPv6. This is used to generate filters // on the router servers. Only valid referenced prefixes within // the AS-SET are allowed inbound to the route server. // All other routes are filtered. // // This field is *required* if the route server network feature only // supports the `af_inet6` address family. // If multiple address families are supported, it is optional if the // `as_set_v4` is provided. // // Important: The format has to be: "AS-SET@IRR". IRR is the database // where the AS-SET is registred. Typically used IRR's are RADB, RIPE, // NTTCOM, APNIC, ALTDB, LEVEL3, ARIN, AFRINIC, LACNIC // AsSetV6 *string `json:"as_set_v6,omitempty"` // MaxPrefixV4 Announcing more than `max_prefix` IPv4 prefixes the bgp // session will be droped. // MaxPrefixV4 *int `json:"max_prefix_v4,omitempty"` // MaxPrefixV6 Announcing more than `max_prefix` IPv6 prefixes the bgp // session will be droped. // MaxPrefixV6 *int `json:"max_prefix_v6,omitempty"` // InsertIxpASN Insert the ASN of the exchange into the AS path. This function is only // used in special cases. In 99% of all cases, it should be false. // InsertIxpASN *bool `json:"insert_ixp_asn,omitempty"` // SessionMode Set the session mode with the routeserver. // SessionMode string `json:"session_mode,omitempty"` // BGPSessionType The session type describes which of the both parties will open the // connection. If set to passive, the customer router needs to open // the connection. If its set to active, the route server will open // the connection. The standard behavior on most exchanges is passive. // BGPSessionType string `json:"bgp_session_type,omitempty"` // IP The BGP session will be established from this IP address, // referenced by ID. // // Only IDs of IPs assigned to the corresponding network service // config can be used. IP string `json:"ip,omitempty"` }
RouteServerNetworkFeatureConfigUpdate Route Server Network Feature Config Update
func (RouteServerNetworkFeatureConfigUpdate) PolymorphicType ¶
func (r RouteServerNetworkFeatureConfigUpdate) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type Status ¶
type Status struct { // Severity We are using syslog severity levels: 0 = Emergency, // 1 = Alert, 2 = Critical, 3 = Error, 4 = Warning, // 5 = Notice, 6 = Informational, 7 = Debug. // Severity int `json:"severity,omitempty"` // Tag A machine readable message identifier. // Tag string `json:"tag,omitempty"` // Message A human readable message, describing the problem // and may contain hints for resolution. // Message string `json:"message,omitempty"` // Attrs Optional machine readable key value pairs // supplementing the message. // // A custom, detailed or localized error messagen can // be presented to the user, derived from the `tag` and `attrs`. // Attrs map[string]interface{} `json:"attrs,omitempty"` // Timestamp The time and date when the event occured. Timestamp time.Time `json:"timestamp,omitempty"` }
Status Status Message
type VLANConfig ¶
type VLANConfig interface { Polymorphic }
VLANConfig The vlan configuration defines how the service is made available on the connection.
type VLANConfigDot1Q ¶
type VLANConfigDot1Q struct { // VLANType is a vlan_type VLANType string `json:"vlan_type,omitempty"` // VLAN A VLAN tag. If `null`, the IXP will auto-select // a valid vlan-id. // VLAN *int `json:"vlan,omitempty"` // VLANEthertype The ethertype of the vlan in hexadecimal notation. VLANEthertype *string `json:"vlan_ethertype,omitempty"` }
VLANConfigDot1Q A Dot1Q vlan configuration
func (VLANConfigDot1Q) PolymorphicType ¶
func (v VLANConfigDot1Q) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type VLANConfigPort ¶
type VLANConfigPort struct { // VLANType is a vlan_type VLANType string `json:"vlan_type,omitempty"` }
VLANConfigPort A Port vlan configuration
func (VLANConfigPort) PolymorphicType ¶
func (v VLANConfigPort) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type VLANConfigQinQ ¶
type VLANConfigQinQ struct { // VLANType is a vlan_type VLANType string `json:"vlan_type,omitempty"` // OuterVLAN The outer VLAN id. // If `null`, the IXP will auto-select // a valid vlan-id. // OuterVLAN *int `json:"outer_vlan,omitempty"` // OuterVLANEthertype The ethertype of the outer tag in hexadecimal notation. OuterVLANEthertype *string `json:"outer_vlan_ethertype,omitempty"` // InnerVLAN The inner VLAN id. // InnerVLAN int `json:"inner_vlan,omitempty"` }
VLANConfigQinQ A QinQ vlan configuration
func (VLANConfigQinQ) PolymorphicType ¶
func (v VLANConfigQinQ) PolymorphicType() string
PolymorphicType implements the polymorphic interface
type ValidationError ¶
type ValidationError struct { ProblemResponse Properties []ValidationErrorProp `json:"properties"` }
ValidationError indicates that the validation of user data failed. The Properties attribute should contain a list of property names and reasons.
func AsErrValidationFailed ¶
func AsErrValidationFailed(err error) *ValidationError
AsErrValidationFailed tries to convert an error into a ValidationError
func (ValidationError) Error ¶
func (e ValidationError) Error() string
Error implements the error interface
type ValidationErrorProp ¶
type ValidationErrorProp struct { // Name is a name Name string `json:"name,omitempty"` // Reason is a reason Reason json.RawMessage `json:"reason,omitempty"` }
ValidationErrorProp A failed validation
type ValidationErrorProperty ¶
type ValidationErrorProperty struct { // Name is a name Name string `json:"name,omitempty"` // Reason is a reason Reason string `json:"reason,omitempty"` }
ValidationErrorProperty A failed validation