public class Origin extends AbstractModel
header, skipSign| Constructor and Description | 
|---|
Origin()  | 
Origin(Origin source)
NOTE: Any ambiguous key set via .set("AnyKey", "value") will be a shallow copy,
       and any explicit key, i.e Foo, set via .setFoo("value") will be a deep copy. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
AdvanceHttps | 
getAdvanceHttps()
Get HTTPS advanced origin-pull configuration
Note: This field may return `null`, indicating that no valid value can be obtained. 
 | 
String[] | 
getBackupOrigins()
Get List of secondary origin servers
This field is used together with `BackupOriginType`.
Note: This field may return `null`, indicating that no valid values can be obtained. 
 | 
String | 
getBackupOriginType()
Get Secondary origin type
This field is used together with `BackupOrigins`.
Values:
`domain`: Domain name
`ip`: IP address
The following secondary origin types are only available to beta users. 
 | 
String | 
getBackupServerName()
Get Host header used when accessing the backup origin server. 
 | 
String | 
getBasePath()
Get Origin-pull path
Note: This field may return `null`, indicating that no valid value can be obtained. 
 | 
String | 
getCosPrivateAccess()
Get When OriginType is COS, you can specify if access to private buckets is allowed. 
 | 
String | 
getOriginCompany()
Get Third-party object storage service vendor
This field is required when `OriginType=third-party`.
Values:
`aws_s3`: AWS S3
`ali_oss`: Alibaba Cloud OSS
`hw_obs`: Huawei Cloud OBS
`Qiniu_kodo`: Qiniu Kodo
`Others`: Other object storage service vendors. 
 | 
String | 
getOriginPullProtocol()
Get Origin-pull protocol configuration
http: forced HTTP origin-pull
follow: protocol follow origin-pull
https: forced HTTPS origin-pull. 
 | 
String[] | 
getOrigins()
Get List of primary origin servers
When modifying the origins, you need to specify `OriginType`.
Note: This field may return `null`, indicating that no valid values can be obtained. 
 | 
String | 
getOriginType()
Get Primary origin server type
This field is used together with `Origins`.
Input:
`domain`: Domain name
`domainv6`: IPv6 domain name
`cos`: COS bucket address
`third_party`: Third-party object storage origin
`igtm`: IGTM origin
`ip`: IP address
`ipv6`: One IPv6 address
`ip_ipv6`: Multiple IPv4 addresses and one IPv6 address
`ip_domain`: IP addresses and domain names (only available to beta users)
`ip_domainv6`: Multiple IPv4 addresses and one IPv6 domain name
`ipv6_domain`: Multiple IPv6 addresses and one domain name
`ipv6_domainv6`: Multiple IPv6 addresses and one IPv6 domain name
`domain_domainv6`: Multiple IPv4 domain names and one IPv6 domain name
`ip_ipv6_domain`: Multiple IPv4 and IPv6 addresses and one domain name
`ip_ipv6_domainv6`: Multiple IPv4 and IPv6 addresses and one IPv6 domain name
`ip_domain_domainv6`: Multiple IPv4 addresses and IPv4 domain names and one IPv6 domain name
`ipv6_domain_domainv6`: Multiple IPv4 domain names and IPv6 addresses and one IPv6 domain name
`ip_ipv6_domain_domainv6`: Multiple IPv4 and IPv6 addresses and IPv4 domain names and one IPv6 domain name
Output:
`image`: Cloud Infinite origin
`ftp`: FTP origin (disused)
When modifying `Origins`, you need to specify `OriginType`. 
 | 
PathBasedOriginRule[] | 
getPathBasedOrigin()
Get Path-based origin-pull configuration
Note: This field may return `null`, indicating that no valid value can be obtained. 
 | 
PathRule[] | 
getPathRules()
Get Origin-pull path rewriting configuration
Note: This field may return `null`, indicating that no valid value can be obtained. 
 | 
String | 
getServerName()
Get Origin-pull host header. 
 | 
OriginSni | 
getSni()
Get HTTPS origin-pull SNI
Note: This field may return `null`, indicating that no valid values can be obtained. 
 | 
void | 
setAdvanceHttps(AdvanceHttps AdvanceHttps)
Set HTTPS advanced origin-pull configuration
Note: This field may return `null`, indicating that no valid value can be obtained. 
 | 
void | 
setBackupOrigins(String[] BackupOrigins)
Set List of secondary origin servers
This field is used together with `BackupOriginType`.
Note: This field may return `null`, indicating that no valid values can be obtained. 
 | 
void | 
setBackupOriginType(String BackupOriginType)
Set Secondary origin type
This field is used together with `BackupOrigins`.
Values:
`domain`: Domain name
`ip`: IP address
The following secondary origin types are only available to beta users. 
 | 
void | 
setBackupServerName(String BackupServerName)
Set Host header used when accessing the backup origin server. 
 | 
void | 
setBasePath(String BasePath)
Set Origin-pull path
Note: This field may return `null`, indicating that no valid value can be obtained. 
 | 
void | 
setCosPrivateAccess(String CosPrivateAccess)
Set When OriginType is COS, you can specify if access to private buckets is allowed. 
 | 
void | 
setOriginCompany(String OriginCompany)
Set Third-party object storage service vendor
This field is required when `OriginType=third-party`.
Values:
`aws_s3`: AWS S3
`ali_oss`: Alibaba Cloud OSS
`hw_obs`: Huawei Cloud OBS
`Qiniu_kodo`: Qiniu Kodo
`Others`: Other object storage service vendors. 
 | 
void | 
setOriginPullProtocol(String OriginPullProtocol)
Set Origin-pull protocol configuration
http: forced HTTP origin-pull
follow: protocol follow origin-pull
https: forced HTTPS origin-pull. 
 | 
void | 
setOrigins(String[] Origins)
Set List of primary origin servers
When modifying the origins, you need to specify `OriginType`.
Note: This field may return `null`, indicating that no valid values can be obtained. 
 | 
void | 
setOriginType(String OriginType)
Set Primary origin server type
This field is used together with `Origins`.
Input:
`domain`: Domain name
`domainv6`: IPv6 domain name
`cos`: COS bucket address
`third_party`: Third-party object storage origin
`igtm`: IGTM origin
`ip`: IP address
`ipv6`: One IPv6 address
`ip_ipv6`: Multiple IPv4 addresses and one IPv6 address
`ip_domain`: IP addresses and domain names (only available to beta users)
`ip_domainv6`: Multiple IPv4 addresses and one IPv6 domain name
`ipv6_domain`: Multiple IPv6 addresses and one domain name
`ipv6_domainv6`: Multiple IPv6 addresses and one IPv6 domain name
`domain_domainv6`: Multiple IPv4 domain names and one IPv6 domain name
`ip_ipv6_domain`: Multiple IPv4 and IPv6 addresses and one domain name
`ip_ipv6_domainv6`: Multiple IPv4 and IPv6 addresses and one IPv6 domain name
`ip_domain_domainv6`: Multiple IPv4 addresses and IPv4 domain names and one IPv6 domain name
`ipv6_domain_domainv6`: Multiple IPv4 domain names and IPv6 addresses and one IPv6 domain name
`ip_ipv6_domain_domainv6`: Multiple IPv4 and IPv6 addresses and IPv4 domain names and one IPv6 domain name
Output:
`image`: Cloud Infinite origin
`ftp`: FTP origin (disused)
When modifying `Origins`, you need to specify `OriginType`. 
 | 
void | 
setPathBasedOrigin(PathBasedOriginRule[] PathBasedOrigin)
Set Path-based origin-pull configuration
Note: This field may return `null`, indicating that no valid value can be obtained. 
 | 
void | 
setPathRules(PathRule[] PathRules)
Set Origin-pull path rewriting configuration
Note: This field may return `null`, indicating that no valid value can be obtained. 
 | 
void | 
setServerName(String ServerName)
Set Origin-pull host header. 
 | 
void | 
setSni(OriginSni Sni)
Set HTTPS origin-pull SNI
Note: This field may return `null`, indicating that no valid values can be obtained. 
 | 
void | 
toMap(HashMap<String,String> map,
     String prefix)
Internal implementation, normal users should not use it. 
 | 
any, fromJsonString, getBinaryParams, GetHeader, getMultipartRequestParams, getSkipSign, isStream, set, SetHeader, setParamArrayObj, setParamArraySimple, setParamObj, setParamSimple, setSkipSign, toJsonStringpublic Origin()
public Origin(Origin source)
public String[] getOrigins()
public void setOrigins(String[] Origins)
Origins - List of primary origin servers
When modifying the origins, you need to specify `OriginType`.
Note: This field may return `null`, indicating that no valid values can be obtained.public String getOriginType()
public void setOriginType(String OriginType)
OriginType - Primary origin server type
This field is used together with `Origins`.
Input:
`domain`: Domain name
`domainv6`: IPv6 domain name
`cos`: COS bucket address
`third_party`: Third-party object storage origin
`igtm`: IGTM origin
`ip`: IP address
`ipv6`: One IPv6 address
`ip_ipv6`: Multiple IPv4 addresses and one IPv6 address
`ip_domain`: IP addresses and domain names (only available to beta users)
`ip_domainv6`: Multiple IPv4 addresses and one IPv6 domain name
`ipv6_domain`: Multiple IPv6 addresses and one domain name
`ipv6_domainv6`: Multiple IPv6 addresses and one IPv6 domain name
`domain_domainv6`: Multiple IPv4 domain names and one IPv6 domain name
`ip_ipv6_domain`: Multiple IPv4 and IPv6 addresses and one domain name
`ip_ipv6_domainv6`: Multiple IPv4 and IPv6 addresses and one IPv6 domain name
`ip_domain_domainv6`: Multiple IPv4 addresses and IPv4 domain names and one IPv6 domain name
`ipv6_domain_domainv6`: Multiple IPv4 domain names and IPv6 addresses and one IPv6 domain name
`ip_ipv6_domain_domainv6`: Multiple IPv4 and IPv6 addresses and IPv4 domain names and one IPv6 domain name
Output:
`image`: Cloud Infinite origin
`ftp`: FTP origin (disused)
When modifying `Origins`, you need to specify `OriginType`.
The IPv6 feature is now only available to beta users. Submit a ticket if you need it.
Note: This field may return `null`, indicating that no valid values can be obtained.public String getServerName()
public void setServerName(String ServerName)
ServerName - Origin-pull host header.
This field is required when `OriginType=cos/third-party`.
If not specified, this field defaults to the acceleration domain name.
For a wildcard domain name, the sub-domain name during the access is used by default.
Note: This field may return `null`, indicating that no valid values can be obtained.public String getCosPrivateAccess()
public void setCosPrivateAccess(String CosPrivateAccess)
CosPrivateAccess - When OriginType is COS, you can specify if access to private buckets is allowed.
Note: To enable this configuration, you need to first grant CDN access to the private bucket. Values: `on` and `off`.
Note: This field may return `null`, indicating that no valid value can be obtained.public String getOriginPullProtocol()
public void setOriginPullProtocol(String OriginPullProtocol)
OriginPullProtocol - Origin-pull protocol configuration
http: forced HTTP origin-pull
follow: protocol follow origin-pull
https: forced HTTPS origin-pull. This only supports origin server port 443 for origin-pull.
Note: This field may return `null`, indicating that no valid value can be obtained.public String[] getBackupOrigins()
public void setBackupOrigins(String[] BackupOrigins)
BackupOrigins - List of secondary origin servers
This field is used together with `BackupOriginType`.
Note: This field may return `null`, indicating that no valid values can be obtained.public String getBackupOriginType()
public void setBackupOriginType(String BackupOriginType)
BackupOriginType - Secondary origin type
This field is used together with `BackupOrigins`.
Values:
`domain`: Domain name
`ip`: IP address
The following secondary origin types are only available to beta users. Submit a ticket to use it.
`ipv6_domain`: Multiple IPv6 addresses and one domain name
`ip_ipv6`: Multiple IPv4 addresses and one IPv6 address
`ipv6_domain`: Multiple IPv6 addresses and one domain name
`ip_ipv6_domain`: Multiple IPv4 and IPv6 addresses and one domain name
Note: This field may return `null`, indicating that no valid values can be obtained.public String getBackupServerName()
public void setBackupServerName(String BackupServerName)
BackupServerName - Host header used when accessing the backup origin server. If it is left empty, the `ServerName` of primary origin server will be used by default.
Note: This field may return `null`, indicating that no valid value can be obtained.public String getBasePath()
public void setBasePath(String BasePath)
BasePath - Origin-pull path
Note: This field may return `null`, indicating that no valid value can be obtained.public PathRule[] getPathRules()
public void setPathRules(PathRule[] PathRules)
PathRules - Origin-pull path rewriting configuration
Note: This field may return `null`, indicating that no valid value can be obtained.public PathBasedOriginRule[] getPathBasedOrigin()
public void setPathBasedOrigin(PathBasedOriginRule[] PathBasedOrigin)
PathBasedOrigin - Path-based origin-pull configuration
Note: This field may return `null`, indicating that no valid value can be obtained.public OriginSni getSni()
public void setSni(OriginSni Sni)
Sni - HTTPS origin-pull SNI
Note: This field may return `null`, indicating that no valid values can be obtained.public AdvanceHttps getAdvanceHttps()
public void setAdvanceHttps(AdvanceHttps AdvanceHttps)
AdvanceHttps - HTTPS advanced origin-pull configuration
Note: This field may return `null`, indicating that no valid value can be obtained.public String getOriginCompany()
public void setOriginCompany(String OriginCompany)
OriginCompany - Third-party object storage service vendor
This field is required when `OriginType=third-party`.
Values:
`aws_s3`: AWS S3
`ali_oss`: Alibaba Cloud OSS
`hw_obs`: Huawei Cloud OBS
`Qiniu_kodo`: Qiniu Kodo
`Others`: Other object storage service vendors. Only AWS signature-compatible object storage services are supported, such as Tencent Cloud COS for Finance Zone.
Note: This field may return `null`, indicating that no valid values can be obtained.Copyright © 2025. All rights reserved.