创建 agreementFileLocalization
命名空间:microsoft.graph
创建新的本地化协议文件。
权限
要调用此 API,需要以下权限之一。要了解详细信息,包括如何选择权限的信息,请参阅权限。
| 权限类型 |
权限(从最低特权到最高特权) |
| 委派(工作或学校帐户) |
Agreement.ReadWrite.All |
| 委派(个人 Microsoft 帐户) |
不支持。 |
| 应用程序 |
不支持。 |
HTTP 请求
POST /agreements/{agreementsId}/files
| 名称 |
说明 |
| Authorization |
Bearer {token}。必需。 |
| Content-Type |
application/json. Required. |
请求正文
在请求正文中,提供 agreementFileLocalization 对象的 JSON 表示形式。
创建 agreementFileLocalization 时,可以指定以下属性。
| 属性 |
类型 |
说明 |
| displayName |
String |
协议策略文件的本地化显示名称。 本地化显示名称将显示给查看协议的最终用户。 |
| fileData |
agreementFileData |
表示使用条款 PDF 文档的数据。 |
| fileName |
String |
例如,协议文件的名称 (TOU.pdf) 。 |
| isDefault |
Boolean |
如果没有语言与客户端首选项匹配,则指示这是否是默认协议文件。 如果未将任何文件标记为默认文件,则第一个文件将被视为默认文件。 只读。 |
| isMajorVersion |
Boolean |
指示协议文件是否为主要版本更新。 主要版本更新使协议对相应语言的接受无效。 |
| language |
String |
协议文件的语言,格式为“languagecode2-country/regioncode2”。 “languagecode2”是派生自 ISO 639-1 的小写双字母代码,而“country/regioncode2”派生自 ISO 3166,通常由两个大写字母或 BCP-47 语言标记组成。 例如,美国英语是 en-US. |
响应
如果成功,此方法在响应正文中返回 200 OK 响应代码和 agreementFileLocalization 对象。
示例
请求
POST https://graph.microsoft.com/v1.0/identityGovernance/termsOfUse/agreements/94410bbf-3d3e-4683-8149-f034e55c39dd/files
Content-Type: application/json
{
"fileName": "Contoso ToU for guest users (French)",
"language": "fr-FR",
"isDefault": false,
"isMajorVersion": false,
"displayName": "Contoso ToU for guest users (French)",
"fileData": {
"data": "base64JVBERi0xLjUKJb/3ov4KNCAwIG9iago8PCAvTGluZWFyaX//truncated-binary-data"
}
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var agreementFileLocalization = new AgreementFileLocalization
{
FileName = "Contoso ToU for guest users (French)",
Language = "fr-FR",
IsDefault = false,
IsMajorVersion = false,
DisplayName = "Contoso ToU for guest users (French)",
FileData = new AgreementFileData
{
Data = Convert.FromBase64String("base64JVBERi0xLjUKJb/3ov4KNCAwIG9iago8PCAvTGluZWFyaX//truncated-binary-data")
}
};
await graphClient.IdentityGovernance.TermsOfUse.Agreements["{agreement-id}"].Files
.Request()
.AddAsync(agreementFileLocalization);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
const options = {
authProvider,
};
const client = Client.init(options);
const agreementFileLocalization = {
fileName: 'Contoso ToU for guest users (French)',
language: 'fr-FR',
isDefault: false,
isMajorVersion: false,
displayName: 'Contoso ToU for guest users (French)',
fileData: {
data: 'base64JVBERi0xLjUKJb/3ov4KNCAwIG9iago8PCAvTGluZWFyaX//truncated-binary-data'
}
};
await client.api('/identityGovernance/termsOfUse/agreements/94410bbf-3d3e-4683-8149-f034e55c39dd/files')
.post(agreementFileLocalization);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/v1.0/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/identityGovernance/termsOfUse/agreements/94410bbf-3d3e-4683-8149-f034e55c39dd/files"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphAgreementFileLocalization *agreementFileLocalization = [[MSGraphAgreementFileLocalization alloc] init];
[agreementFileLocalization setFileName:@"Contoso ToU for guest users (French)"];
[agreementFileLocalization setLanguage:@"fr-FR"];
[agreementFileLocalization setIsDefault: false];
[agreementFileLocalization setIsMajorVersion: false];
[agreementFileLocalization setDisplayName:@"Contoso ToU for guest users (French)"];
MSGraphAgreementFileData *fileData = [[MSGraphAgreementFileData alloc] init];
[fileData setData:@"base64JVBERi0xLjUKJb/3ov4KNCAwIG9iago8PCAvTGluZWFyaX//truncated-binary-data"];
[agreementFileLocalization setFileData:fileData];
NSError *error;
NSData *agreementFileLocalizationData = [agreementFileLocalization getSerializedDataWithError:&error];
[urlRequest setHTTPBody:agreementFileLocalizationData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
AgreementFileLocalization agreementFileLocalization = new AgreementFileLocalization();
agreementFileLocalization.fileName = "Contoso ToU for guest users (French)";
agreementFileLocalization.language = "fr-FR";
agreementFileLocalization.isDefault = false;
agreementFileLocalization.isMajorVersion = false;
agreementFileLocalization.displayName = "Contoso ToU for guest users (French)";
AgreementFileData fileData = new AgreementFileData();
fileData.data = Base64.getDecoder().decode("base64JVBERi0xLjUKJb/3ov4KNCAwIG9iago8PCAvTGluZWFyaX//truncated-binary-data");
agreementFileLocalization.fileData = fileData;
graphClient.identityGovernance().termsOfUse().agreements("94410bbf-3d3e-4683-8149-f034e55c39dd").files()
.buildRequest()
.post(agreementFileLocalization);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewAgreementFileLocalization()
fileName := "Contoso ToU for guest users (French)"
requestBody.SetFileName(&fileName)
language := "fr-FR"
requestBody.SetLanguage(&language)
isDefault := false
requestBody.SetIsDefault(&isDefault)
isMajorVersion := false
requestBody.SetIsMajorVersion(&isMajorVersion)
displayName := "Contoso ToU for guest users (French)"
requestBody.SetDisplayName(&displayName)
fileData := msgraphsdk.NewAgreementFileData()
requestBody.SetFileData(fileData)
data := []byte("base64JVBERi0xLjUKJb/3ov4KNCAwIG9iago8PCAvTGluZWFyaX//truncated-binary-data")
fileData.SetData(&data)
agreementId := "agreement-id"
result, err := graphClient.IdentityGovernance().TermsOfUse().AgreementsById(&agreementId).Files().Post(requestBody)
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
响应
注意: 为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 200 OK
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#identityGovernance/termsOfUse/agreements('94410bbf-3d3e-4683-8149-f034e55c39dd')/files/$entity",
"id": "90d1723c-52c1-40e3-a51a-da99a82c0327",
"fileName": "Contoso ToU for guest users (French)",
"displayName": "Contoso ToU for guest users (French)",
"language": "fr-FR",
"isDefault": false,
"isMajorVersion": false,
"createdDateTime": "2022-03-04T14:38:22.8292386Z",
"fileData": {
"data": "base64JVBERi0xLjUKJb/"
}
}