# # Copyright © 2024. Broadcom Inc. and its subsidiaries. All Rights Reserved. # extend type Query { "Get all webApi services" webApiServices : [WebApiService]! @deprecated(reason: "Use 'services' instead.") internalWebApiServices : [InternalWebApiService]! @deprecated(reason: "Use 'services' instead.") "Get webApi services by name" webApiServicesByName(name: String!) : [WebApiService!]! @deprecated(reason: "Use 'servicesByName' instead.") "Get webApi service by name. Returns none if more than one are found." webApiServiceByName(name: String!) : WebApiService @deprecated(reason: "Use 'serviceByName' instead.") "Get Internal webApi Service by name" internalWebApiServiceByName(name: String!) : InternalWebApiService @deprecated(reason: "Use 'serviceByName' instead.") "Get webApi services by resolutionPath" webApiServicesByResolutionPath(resolutionPath: String!) : [WebApiService !]! @deprecated(reason: "Use 'servicesByResolutionPath' instead.") "Get webApi service by resolutionPath. Returns none if more than one are found." webApiServiceByResolutionPath(resolutionPath: String!) : WebApiService @deprecated(reason: "Use 'serviceByResolutionPath' instead.") "Get Internal webApi Services by resolutionPath" internalWebApiServiceByResolutionPath(resolutionPath: String!) : InternalWebApiService @deprecated(reason: "Use 'servicesByResolutionPath' instead.") "Get webApi services inside a folder" webApiServicesByFolderPath(folderPath: String!) : [WebApiService]! @deprecated(reason: "Use 'servicesByFolderPath' instead.") "Get Internal webApi services inside a folder" internalWebApiServicesByFolderPath(folderPath: String!) : [InternalWebApiService]! @deprecated(reason: "Use 'servicesByFolderPath' instead.") "Get webApi services by goid" webApiServiceByGoid(goid: ID!) : WebApiService } extend type Mutation { "Create or update web api services" setWebApiServices(input: [WebApiServiceInput!]!) : WebApiServicesPayload @deprecated(reason: "Use 'setServices' instead.") "Create or update Internal web api services" setInternalWebApiServices(input: [WebApiServiceInput!]!) : InternalWebApiServicesPayload @deprecated(reason: "Use 'setServices' instead.") "Delete existing web api services given their resolution paths" deleteWebApiServices(resolutionPaths: [String!]!) : WebApiServicesPayload @deprecated(reason: "Use 'deleteServices' instead.") "Delete existing Internal web api services given their resolution paths" deleteInternalWebApiServices(resolutionPaths: [String!]!) : InternalWebApiServicesPayload @deprecated(reason: "Use 'deleteServices' instead.") } """ A Web API service published on the Layer7 Gateway > @l7-entity > @l7-identity-fields resolutionPath > @l7-summary-fields goid,guid,name,resolutionPath,checksum > @l7-excluded-fields > @l7-deprecated Use 'L7Service' instead. """ type WebApiService implements PublishedService { "The goid for this service" goid : ID! "The guid for this service" guid : ID "The name of the service" name: String! "The resolution path to the service" resolutionPath: String! "The configuration checksum" checksum: String! "Whether or not the published service is enabled" enabled: Boolean! "The folder path to the service" folderPath: String! "Which http methods are allowed" methodsAllowed: [HttpMethod!]! "Whether or not the tracing is enabled" tracingEnabled: Boolean! "Whether or not the WSS processing is enabled" wssProcessingEnabled: Boolean! "Service properties" properties: [EntityProperty!] "The policy and dependencies" policy: Policy! } """ A Internal Web API service published on the Layer7 Gateway > @l7-entity > @l7-identity-fields resolutionPath > @l7-summary-fields goid,guid,name,resolutionPath,checksum > @l7-excluded-fields > @l7-deprecated Use 'L7Service' instead. """ type InternalWebApiService implements PublishedService { "The goid for this service" goid : ID! "The guid for this service" guid : ID "The name of the service" name: String! "The resolution path to the service" resolutionPath: String! "The configuration checksum" checksum: String! "Whether or not the published service is enabled" enabled: Boolean! "The folder path to the service" folderPath: String! "Which http methods are allowed" methodsAllowed: [HttpMethod!]! "Whether or not the tracing is enabled" tracingEnabled: Boolean! "Whether or not the WSS processing is enabled" wssProcessingEnabled: Boolean! "Service properties" properties: [EntityProperty!] "The policy and dependencies" policy: Policy! } input WebApiServiceInput { "The internal entity unique identifier" goid: ID "The guid for this service, if none provided, assigned at creation" guid: ID "The folder path where to create this service. If the path does not exist, it will be created" folderPath: NonEmptyString! "The name of the service" name: String! "The resolution path of the service" resolutionPath: String! "The policy" policy: PolicyInput! "Whether the service is enabled (optional, default to true)" enabled: Boolean = true "The http methods allowed for this service" methodsAllowed: [HttpMethod!]! tracingEnabled: Boolean = false wssProcessingEnabled: Boolean = false properties: [EntityPropertyInput!] "Ignored at creation time but can be used to compare bundle with gw state" checksum : String } type WebApiServicesPayload implements EntityMutationsPayload { status: [EntityMutationStatus!]! detailedStatus: [EntityMutationDetailedStatus!]! webApiServices: [WebApiService]! } type InternalWebApiServicesPayload implements EntityMutationsPayload { status: [EntityMutationStatus!]! detailedStatus: [EntityMutationDetailedStatus!]! internalWebApiServices: [InternalWebApiService]! } input WebApiServiceMappingInstructionInput{ action: EntityMutationAction! default: Boolean failOnNew: Boolean failOnExisting: Boolean nodef: Boolean "one or more name-value pairs to identify a WebApiService entity uniquely" source: WebApiServiceRefInput } input WebApiServiceRefInput { "The resolution path to the service" resolutionPath: String! }