Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Commitment ¶
type Commitment struct { // SPM internal Commitment ID Id string `json:"id"` // SPM internal Subscribed Service ID SubscribedServiceId string `json:"subscribedServiceId"` // Commitment start date TimeStart time.Time `json:"timeStart"` // Commitment end date TimeEnd time.Time `json:"timeEnd"` // Commitment quantity Quantity string `json:"quantity"` // Commitment used amount UsedAmount string `json:"usedAmount"` // Commitment available amount AvailableAmount string `json:"availableAmount"` // Funded Allocation line value // example: 12000.00 FundedAllocationValue string `json:"fundedAllocationValue"` }
type ComputedUsage ¶
type ComputedUsage struct { // SPM Internal computed usage Id , 32 character string Id string `json:"id"` // Computed Usage created time, expressed in RFC 3339 timestamp format. TimeCreated time.Time `json:"timeCreated"` // Computed Usage updated time, expressed in RFC 3339 timestamp format. TimeUpdated time.Time `json:"timeUpdated"` // Subscribed service line parent id ParentSubscribedServiceId string `json:"parentSubscribedServiceId"` ParentProduct ComputedUsageProduct `json:"parentProduct"` // Subscription plan number PlanNumber string `json:"planNumber"` // Currency code CurrencyCode string `json:"currencyCode"` // References the tier in the ratecard for that usage (OCI will be using the same reference to cross-reference for correctness on the usage csv report), comes from Entity OBSCNTR_IPT_PRODUCTTIER. RateCardTierdId string `json:"rateCardTierdId"` // Ratecard Id at subscribed service level RateCardId string `json:"rateCardId"` // SPM Internal compute records source . ComputeSource string `json:"computeSource"` // Data Center Attribute as sent by MQS to SPM. DataCenter string `json:"dataCenter"` // MQS Identifier send to SPM , SPM does not transform this attribute and is received as is. MqsMessageId string `json:"mqsMessageId"` // Total Quantity that was used for computation Quantity string `json:"quantity"` // SPM Internal usage Line number identifier in SPM coming from Metered Services entity. UsageNumber string `json:"usageNumber"` // SPM Internal Original usage Line number identifier in SPM coming from Metered Services entity. OriginalUsageNumber string `json:"originalUsageNumber"` // Subscribed service commitmentId. CommitmentServiceId string `json:"commitmentServiceId"` // Invoicing status for the aggregated compute usage IsInvoiced bool `json:"isInvoiced"` // Usage compute type in SPM. Type string `json:"type"` // Usae computation date, expressed in RFC 3339 timestamp format. TimeOfArrival time.Time `json:"timeOfArrival"` // Metered Service date, expressed in RFC 3339 timestamp format. TimeMeteredOn time.Time `json:"timeMeteredOn"` // Net Unit Price for the product in consideration, price actual. NetUnitPrice string `json:"netUnitPrice"` // Computed Line Amount rounded. CostRounded string `json:"costRounded"` // Computed Line Amount not rounded Cost string `json:"cost"` Product ComputedUsageProduct `json:"product"` // Unit of Measure UnitOfMeasure string `json:"unitOfMeasure"` }
ComputedUsage Computed Usage Summary object
type ComputedUsageProduct ¶
type ComputedUsageProduct struct { // Product part number PartNumber string `json:"partNumber"` // Product name Name string `json:"name"` // Unit of Measure UnitOfMeasure string `json:"unitOfMeasure"` // Product provisioning group ProvisioningGroup string `json:"provisioningGroup"` // Metered service billing category BillingCategory string `json:"billingCategory"` // Product category ProductCategory string `json:"productCategory"` // Rate card part type of Product UcmRateCardPartType string `json:"ucmRateCardPartType"` }
ComputedUsageProduct Product description
type Config ¶
type Config struct { Publisher Publisher `json:"publisher"` PublisherSummary PublisherSummary `json:"publisherSummary"` Publication Publication `json:"publication"` Market Market `json:"market"` Listing Listing `json:"listing"` ListingRevision ListingRevision `json:"listingRevision"` ListingSummary ListingSummary `json:"listingSummary"` Commitment Commitment `json:"commitment"` ComputedUsage ComputedUsage `json:"computedUsage"` ComputedUsageProduct ComputedUsageProduct `json:"computedUsageProduct"` }
type Listing ¶
type Listing struct { // The unique identifier for the listing in Marketplace. Id string `json:"id"` // The name of the listing. Name string `json:"name"` // The version of the listing. Version string `json:"version"` // The tagline of the listing. Tagline string `json:"tagline"` // Keywords associated with the listing. Keywords string `json:"keywords"` // A short description of the listing. ShortDescription string `json:"shortDescription"` // Usage information for the listing. UsageInformation string `json:"usageInformation"` // A long description of the listing. LongDescription string `json:"longDescription"` // A description of the publisher's licensing model for the listing. LicenseModelDescription string `json:"licenseModelDescription"` // System requirements for the listing. SystemRequirements string `json:"systemRequirements"` // The release date of the listing. TimeReleased time.Time `json:"timeReleased"` // Release notes for the listing. ReleaseNotes string `json:"releaseNotes"` // Categories that the listing belongs to. Categories []string `json:"categories"` Publisher Publisher `json:"publisher"` // Languages supported by the listing. Languages []string `json:"languages"` // Screenshots of the listing. Screenshots []string `json:"screenshots"` // Videos of the listing. Videos []string `json:"videos"` // Contact information to use to get support from the publisher for the listing. SupportContacts SupportContact `json:"supportContacts"` // Links to support resources for the listing. SupportLinks []string `json:"supportLinks"` // Links to additional documentation provided by the publisher specifically for the listing. DocumentationLinks []string `json:"documentationLinks"` Icon string `json:"icon"` Banner string `json:"banner"` // The list of compatible architectures supported by the listing CompatibleArchitectures []string `json:"compatibleArchitectures"` // The regions where you can deploy the listing. (Some listings have restrictions that limit their deployment to United States regions only.) Regions []string `json:"regions"` // The default package version. DefaultPackageVersion string `json:"defaultPackageVersion"` // Indicates whether the listing is included in Featured Listings. IsFeatured bool `json:"isFeatured"` // The publisher category to which the listing belongs. The publisher category informs where the listing appears for use. ListingType ListingTypeEnum `json:"listingType"` // List of operating systems supported by the listing. SupportedOperatingSystems []string `json:"supportedOperatingSystems"` }
Listing The model for an Oracle Cloud Infrastructure Marketplace listing.
type ListingRevision ¶
type ListingRevision struct { // Unique OCID identifier for the listing revision in Marketplace Publisher. Id string `json:"id"` // The unique identifier for the listing this revision belongs to. ListingId string `json:"listingId"` // The name for the listing revision. DisplayName string `json:"displayName"` // Single line introduction for the listing revision. Headline string `json:"headline"` // The time the listing revision was created. An RFC3339 formatted datetime string. TimeCreated time.Time `json:"timeCreated"` // The time the listing revision was updated. An RFC3339 formatted datetime string. TimeUpdated time.Time `json:"timeUpdated"` // The categories for the listing revision. Categories []string `json:"categories"` // The current status for the Listing revision. Status string `json:"status"` // The current state of the listing revision. LifecycleState string `json:"lifecycleState"` // The listing's package type. Populated from the listing. PackageType string `json:"packageType"` // The pricing model for the listing revision. PricingType string `json:"pricingType"` // The unique identifier for the compartment. CompartmentId string `json:"compartmentId"` // The revision number for the listing revision. This is an internal attribute RevisionNumber string `json:"revisionNumber"` VersionDetails string `json:"versionDetails"` // The tagline of the listing revision. Tagline string `json:"tagline"` // Keywords associated with the listing revision. Keywords string `json:"keywords"` // A short description for the listing revision. ShortDescription string `json:"shortDescription"` // Usage information for the listing revision. UsageInformation string `json:"usageInformation"` // A long description for the listing revision. LongDescription string `json:"longDescription"` // System requirements for the listing revision. SystemRequirements string `json:"systemRequirements"` // The markets supported by the listing revision. Markets []string `json:"markets"` ContentLanguage string `json:"contentLanguage"` // Languages supported by the publisher for the listing revision. Supportedlanguages []string `json:"supportedlanguages"` // Contact information to use to get support from the publisher for the listing revision. SupportContacts SupportContact `json:"supportContacts"` // Links to support resources for the listing revision. SupportLinks []string `json:"supportLinks"` Icon string `json:"icon"` // Status notes for the listing revision. StatusNotes string `json:"statusNotes"` // Allowed tenancies provided when a listing revision is published as private. AllowedTenancies []string `json:"allowedTenancies"` // Identifies whether publisher allows internal tenancy launches for the listing revision. AreInternalTenancyLaunchAllowed bool `json:"areInternalTenancyLaunchAllowed"` // Additional metadata key/value pairs for the listing revision summary. ExtendedMetadata map[string]string `json:"extendedMetadata"` // Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. // Example: `{"bar-key": "value"}` FreeformTags map[string]string `json:"freeformTags"` // Defined tags for this resource. Each key is predefined and scoped to a namespace. // Example: `{"foo-namespace": {"bar-key": "value"}}` DefinedTags map[string]map[string]interface{} `json:"definedTags"` // System tags for this resource. Each key is predefined and scoped to a namespace. // Example: `{"orcl-cloud": {"free-tier-retained": "true"}}` SystemTags map[string]map[string]interface{} `json:"systemTags"` }
ListingRevision The model for an Oracle Cloud Infrastructure Marketplace Publisher listing revision.
type ListingSummary ¶
type ListingSummary struct { // The unique OCID of the listing. Id string `json:"id"` // The unique identifier of the compartment. CompartmentId string `json:"compartmentId"` // The listing type of the Listing. ListingType ListingTypeEnum `json:"listingType"` // The name of the listing. Name string `json:"name"` // The current state for the Listing. LifecycleState string `json:"lifecycleState"` // The package type for the listing. PackageType string `json:"packageType"` // The date and time the listing was created, in the format defined by RFC3339 (https://tools.ietf.org/html/rfc3339). // Example: `2023-03-27T21:10:29.600Z` TimeCreated time.Time `json:"timeCreated"` // The date and time the listing was updated, in the format defined by RFC3339 (https://tools.ietf.org/html/rfc3339). // Example: `2023-03-27T21:10:29.600Z` TimeUpdated time.Time `json:"timeUpdated"` // Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. // Example: `{"bar-key": "value"}` FreeformTags map[string]string `json:"freeformTags"` // Defined tags for this resource. Each key is predefined and scoped to a namespace. // Example: `{"foo-namespace": {"bar-key": "value"}}` DefinedTags map[string]map[string]interface{} `json:"definedTags"` // System tags for this resource. Each key is predefined and scoped to a namespace. // Example: `{"orcl-cloud": {"free-tier-retained": "true"}}` SystemTags map[string]map[string]interface{} `json:"systemTags"` }
ListingSummary The model for a summary of the publisher listing.
type ListingTypeEnum ¶
type ListingTypeEnum string
ListingTypeEnum Enum with underlying type: string
const ( ListingTypeCommunity ListingTypeEnum = "COMMUNITY" ListingTypePartner ListingTypeEnum = "PARTNER" ListingTypePrivate ListingTypeEnum = "PRIVATE" )
Set of constants representing the allowable values for ListingTypeEnum
type Market ¶
type Market struct { // The name of the market. Name string `json:"name"` // The code of the market. Code string `json:"code"` // The category code of the market. CategoryCode string `json:"categoryCode"` // bill to countries for the market. BillToCountries []string `json:"billToCountries"` // The current state for the market. LifecycleState string `json:"lifecycleState"` // The date and time the market was created, in the format defined by RFC3339 (https://tools.ietf.org/html/rfc3339). // Example: `2022-09-15T21:10:29.600Z` TimeCreated time.Time `json:"timeCreated"` // The date and time the market was updated, in the format defined by RFC3339 (https://tools.ietf.org/html/rfc3339). // Example: `2022-09-15T21:10:29.600Z` TimeUpdated time.Time `json:"timeUpdated"` // The realm code of the market. RealmCode string `json:"realmCode"` }
Market The model for the market details.
type Publication ¶
type Publication struct { // The OCID (https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the compartment where the publication exists. CompartmentId string `json:"compartmentId"` // The unique identifier for the publication in Marketplace. Id string `json:"id"` // The name of the publication, which is also used in the listing. Name string `json:"name"` // The publisher category to which the publication belongs. The publisher category informs where the listing appears for use. ListingType ListingTypeEnum `json:"listingType"` // The lifecycle state of the publication. LifecycleState PublicationLifecycleStateEnum `json:"lifecycleState"` // A short description of the publication to use in the listing. ShortDescription string `json:"shortDescription"` // A long description of the publication to use in the listing. LongDescription string `json:"longDescription"` // Contact information for getting support from the publisher for the listing. SupportContacts SupportContact `json:"supportContacts"` Icon string `json:"icon"` // The list of operating systems supported by the listing. SupportedOperatingSystems []string `json:"supportedOperatingSystems"` // The date and time the publication was created, expressed in RFC 3339 (https://tools.ietf.org/html/rfc3339) // timestamp format. // Example: `2016-08-25T21:10:29.600Z` TimeCreated time.Time `json:"timeCreated"` // The defined tags associated with this resource, if any. Each key is predefined and scoped to namespaces. // For more information, see Resource Tags (https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). // Example: `{"Operations": {"CostCenter": "42"}}` DefinedTags map[string]map[string]interface{} `json:"definedTags"` // The freeform tags associated with this resource, if any. Each tag is a simple key-value pair with no // predefined name, type, or namespace. For more information, see Resource Tags (https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). // Example: `{"Department": "Finance"}` FreeformTags map[string]string `json:"freeformTags"` // The system tags associated with this resource, if any. The system tags are set by Oracle Cloud Infrastructure services. Each key is predefined and scoped to namespaces. // For more information, see Resource Tags (https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). // Example: `{orcl-cloud: {free-tier-retain: true}}` SystemTags map[string]map[string]interface{} `json:"systemTags"` }
Publication The model for an Oracle Cloud Infrastructure Marketplace publication.
type PublicationLifecycleStateEnum ¶
type PublicationLifecycleStateEnum string
PublicationLifecycleStateEnum Enum with underlying type: string
const ( PublicationLifecycleStateCreating PublicationLifecycleStateEnum = "CREATING" PublicationLifecycleStateActive PublicationLifecycleStateEnum = "ACTIVE" PublicationLifecycleStateDeleting PublicationLifecycleStateEnum = "DELETING" PublicationLifecycleStateDeleted PublicationLifecycleStateEnum = "DELETED" PublicationLifecycleStateFailed PublicationLifecycleStateEnum = "FAILED" )
Set of constants representing the allowable values for PublicationLifecycleStateEnum
type Publisher ¶
type Publisher struct { // Unique OCID identifier for the publisher. Id string `json:"id"` // The root compartment of the Publisher. CompartmentId string `json:"compartmentId"` // The namespace for the publisher registry to persist artifacts. RegistryNamespace string `json:"registryNamespace"` // The name of the publisher. DisplayName string `json:"displayName"` // The public email address of the publisher for customers. ContactEmail string `json:"contactEmail"` // The phone number of the publisher in E.164 format. ContactPhone string `json:"contactPhone"` // publisher type. PublisherType string `json:"publisherType"` // The time the publisher was created. An RFC3339 formatted datetime string. TimeCreated time.Time `json:"timeCreated"` // The time the publisher was updated. An RFC3339 formatted datetime string. TimeUpdated time.Time `json:"timeUpdated"` // publisher status. PublisherStatus string `json:"publisherStatus"` // Unique legacy service identifier for the publisher. LegacyId string `json:"legacyId"` // A description of the publisher. Description string `json:"description"` // The year the publisher's company or organization was founded. YearFounded int64 `json:"yearFounded"` // The publisher's website. WebsiteUrl string `json:"websiteUrl"` // The address of the publisher's headquarters. HqAddress string `json:"hqAddress"` Logo string `json:"logo"` // Publisher's Facebook URL FacebookUrl string `json:"facebookUrl"` // Publisher's Twitter URL TwitterUrl string `json:"twitterUrl"` // Publisher's LinkedIn URL LinkedinUrl string `json:"linkedinUrl"` // Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. // Example: `{"bar-key": "value"}` FreeformTags map[string]string `json:"freeformTags"` // Defined tags for this resource. Each key is predefined and scoped to a namespace. // Example: `{"foo-namespace": {"bar-key": "value"}}` DefinedTags map[string]map[string]interface{} `json:"definedTags"` // System tags for this resource. Each key is predefined and scoped to a namespace. // Example: `{"orcl-cloud": {"free-tier-retained": "true"}}` SystemTags map[string]map[string]interface{} `json:"systemTags"` // The private email address of the publisher product team. NotificationEmail string `json:"notificationEmail"` }
Publisher The model for a publisher details.
type PublisherSummary ¶
type PublisherSummary struct { // The unique identifier for the publisher. Id string `json:"id"` // The name of the publisher. Name string `json:"name"` // A description of the publisher. Description string `json:"description"` }
PublisherSummary Summary details about the publisher of the listing.
type SupportContact ¶
type SupportContact struct { // The name of the contact. Name string `json:"name"` // The phone number of the contact. Phone string `json:"phone"` // The email of the contact. Email string `json:"email"` // The email subject line to use when contacting support. Subject string `json:"subject"` }
SupportContact Contact information to use to get support.