契約を作成する
-
[アーティクル]
-
-
名前空間: microsoft.graph
新しい契約オブジェクト を作成 します。
アクセス許可
この API を呼び出すには、次のいずれかのアクセス許可が必要です。アクセス許可の選択方法などの詳細については、「アクセス許可」を参照してください。
| アクセス許可の種類 |
アクセス許可 (特権の小さいものから大きいものへ) |
| 委任 (職場または学校のアカウント) |
Agreement.ReadWrite.All |
| 委任 (個人用 Microsoft アカウント) |
サポートされていません。 |
| アプリケーション |
サポートされていません。 |
HTTP 要求
POST /identityGovernance/termsOfUse/agreements
| 名前 |
説明 |
| Authorization |
ベアラー {トークン}。必須。 |
| Content-type |
application/json. Required. |
要求本文
要求本文で、アグリーメント オブジェクトの JSON 表記を 指定 します。
次の表に、契約を作成するときに必要なプロパティを示します。
| プロパティ |
型 |
説明 |
| displayName |
文字列 |
契約の名前を表示します。 |
| isViewingBeforeAcceptanceRequired |
Boolean |
同意する前に、ユーザーが契約を展開して表示する必要があるかどうかを示します。 |
| fileName |
String |
契約ファイルの名前 (たとえば、TOU.pdf)。 |
| isDefault |
ブール型 (Boolean) |
言語がクライアントの基本設定と一致する場合、これが既定の契約ファイルであるかどうかを示します。 どのファイルも既定としてマークしない場合、最初のファイルは既定として扱います。 |
| language |
String |
"languagecode2-country/regioncode2" 形式のアグリーメント ファイルの言語。 "languagecode2" は、ISO 639-1 から派生した小文字の 2 文字コードで、"country/regioncode2" は ISO 3166 から派生し、通常は 2 つの大文字または BCP-47 言語タグで構成されます。 たとえば、米国英語は .en-US |
| data |
Binary |
PDF ドキュメントの使用条件を表すデータ。 |
応答
成功した場合、このメソッドは応答コード 201, Created と応答本文 のアグリー メント オブジェクトを返します。
例
要求
要求本文で、アグリーメント オブジェクトの JSON 表記を 指定 します。
POST https://graph.microsoft.com/v1.0/identityGovernance/termsOfUse/agreements
Content-type: application/json
{
"displayName": "Contoso ToU for guest users",
"isViewingBeforeAcceptanceRequired": true,
"files": [
{
"fileName": "TOU.pdf",
"language": "en",
"isDefault": true,
"fileData": {
"data": "SGVsbG8gd29ybGQ=//truncated-binary"
}
}
]
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var agreement = new Agreement
{
DisplayName = "Contoso ToU for guest users",
IsViewingBeforeAcceptanceRequired = true,
Files = new AgreementFilesCollectionPage()
{
new AgreementFileLocalization
{
FileName = "TOU.pdf",
Language = "en",
IsDefault = true,
FileData = new AgreementFileData
{
Data = Convert.FromBase64String("SGVsbG8gd29ybGQ=//truncated-binary")
}
}
}
};
await graphClient.IdentityGovernance.TermsOfUse.Agreements
.Request()
.AddAsync(agreement);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
const options = {
authProvider,
};
const client = Client.init(options);
const agreement = {
displayName: 'Contoso ToU for guest users',
isViewingBeforeAcceptanceRequired: true,
files: [
{
fileName: 'TOU.pdf',
language: 'en',
isDefault: true,
fileData: {
data: 'SGVsbG8gd29ybGQ=//truncated-binary'
}
}
]
};
await client.api('/identityGovernance/termsOfUse/agreements')
.post(agreement);
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"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphAgreement *agreement = [[MSGraphAgreement alloc] init];
[agreement setDisplayName:@"Contoso ToU for guest users"];
[agreement setIsViewingBeforeAcceptanceRequired: true];
NSMutableArray *filesList = [[NSMutableArray alloc] init];
MSGraphAgreementFileLocalization *files = [[MSGraphAgreementFileLocalization alloc] init];
[files setFileName:@"TOU.pdf"];
[files setLanguage:@"en"];
[files setIsDefault: true];
MSGraphAgreementFileData *fileData = [[MSGraphAgreementFileData alloc] init];
[fileData setData:@"SGVsbG8gd29ybGQ=//truncated-binary"];
[files setFileData:fileData];
[filesList addObject: files];
[agreement setFiles:filesList];
NSError *error;
NSData *agreementData = [agreement getSerializedDataWithError:&error];
[urlRequest setHTTPBody:agreementData];
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();
Agreement agreement = new Agreement();
agreement.displayName = "Contoso ToU for guest users";
agreement.isViewingBeforeAcceptanceRequired = true;
LinkedList<AgreementFileLocalization> filesList = new LinkedList<AgreementFileLocalization>();
AgreementFileLocalization files = new AgreementFileLocalization();
files.fileName = "TOU.pdf";
files.language = "en";
files.isDefault = true;
AgreementFileData fileData = new AgreementFileData();
fileData.data = Base64.getDecoder().decode("SGVsbG8gd29ybGQ=//truncated-binary");
files.fileData = fileData;
filesList.add(files);
AgreementFileLocalizationCollectionResponse agreementFileLocalizationCollectionResponse = new AgreementFileLocalizationCollectionResponse();
agreementFileLocalizationCollectionResponse.value = filesList;
AgreementFileLocalizationCollectionPage agreementFileLocalizationCollectionPage = new AgreementFileLocalizationCollectionPage(agreementFileLocalizationCollectionResponse, null);
agreement.files = agreementFileLocalizationCollectionPage;
graphClient.identityGovernance().termsOfUse().agreements()
.buildRequest()
.post(agreement);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewAgreement()
displayName := "Contoso ToU for guest users"
requestBody.SetDisplayName(&displayName)
isViewingBeforeAcceptanceRequired := true
requestBody.SetIsViewingBeforeAcceptanceRequired(&isViewingBeforeAcceptanceRequired)
requestBody.SetFiles( []AgreementFileLocalization {
msgraphsdk.NewAgreementFileLocalization(),
SetAdditionalData(map[string]interface{}{
"fileName": "TOU.pdf",
"language": "en",
"isDefault": true,
}
}
result, err := graphClient.IdentityGovernance().TermsOfUse().Agreements().Post(requestBody)
SDK をプロジェクトに追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
Import-Module Microsoft.Graph.Identity.Governance
$params = @{
DisplayName = "Contoso ToU for guest users"
IsViewingBeforeAcceptanceRequired = $true
Files = @(
@{
FileName = "TOU.pdf"
Language = "en"
IsDefault = $true
FileData = @{
Data = [System.Text.Encoding]::ASCII.GetBytes("SGVsbG8gd29ybGQ=//truncated-binary")
}
}
)
}
New-MgIdentityGovernanceTermOfUseAgreement -BodyParameter $params
SDK をプロジェクトに追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
応答
注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。
HTTP/1.1 201 Created
Content-type: application/json
{
"displayName": "MSGraph Sample",
"isViewingBeforeAcceptanceRequired": true,
"id": "093b947f-8363-4979-a47d-4c52b33ee1be"
}