Criar printerShare
Artigo
07/18/2022
3 minutos para o fim da leitura
3 colaboradores
Neste artigo
Namespace: microsoft.graph
Crie uma nova printerShare para a impressora especificada .
Permissões
Uma das seguintes permissões é obrigatória para chamar esta API. Para saber mais, incluindo como escolher permissões, confira Permissões .
Para usar o serviço Impressão Universal, o usuário ou locatário do aplicativo deve ter uma assinatura de Impressão Universal ativa, além das permissões listadas na tabela a seguir. O usuário inscreveu deve ser um Administrador de Impressora.
Tipo de permissão
Permissões (da com menos para a com mais privilégios)
Delegado (conta corporativa ou de estudante)
PrinterShare.ReadWrite.All
Delegado (conta pessoal da Microsoft)
Sem suporte.
Aplicativo
Sem suporte.
Solicitação HTTP
POST /print/shares
Nome
Descrição
Autorização
{token} de portador. Obrigatório.
Content-Type
application/json. Obrigatório.
Corpo da solicitação
No corpo da solicitação, fornece uma representação JSON do objeto printerShare.
A tabela a seguir mostra as propriedades que podem ser fornecidas ao criar a printerShare .
Propriedade
Tipo
Descrição
Obrigatório?
impressora
microsoft.graph.printer
A impressora à que essa impressora está relacionada. Use a printer@odata.bind sintaxe, conforme mostrado no exemplo a seguir.
Sim
displayName
Cadeia de caracteres
O nome do compartilhamento de impressora que os clientes de impressão devem exibir. O comprimento máximo permitido é de 50 caracteres.
Sim
allowAllUsers
Booliano
Se true , todos os usuários e grupos terão acesso a esse compartilhamento de impressora. Isso sobressalta as listas de permissão definidas pelas propriedades de navegação allowedUsers e allowedGroups.
Não
Resposta
Se tiver êxito, este método retornará um código 201 Created de resposta e um objeto printerShare no corpo da resposta.
Exemplos
Solicitação
POST https://graph.microsoft.com/v1.0/print/shares
Content-Type: application/json
{
"displayName": "ShareName",
"allowAllUsers": false,
"printer@odata.bind": "https://graph.microsoft.com/v1.0/print/printers/{printerId}"
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var printerShare = new PrinterShare
{
DisplayName = "ShareName",
AllowAllUsers = false,
AdditionalData = new Dictionary<string, object>()
{
{"printer@odata.bind", "https://graph.microsoft.com/v1.0/print/printers/{printerId}"}
}
};
await graphClient.Print.Shares
.Request()
.AddAsync(printerShare);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider , consulte a documentação do SDK .
const options = {
authProvider,
};
const client = Client.init(options);
const printerShare = {
displayName: 'ShareName',
allowAllUsers: false,
'printer@odata.bind': 'https://graph.microsoft.com/v1.0/print/printers/{printerId}'
};
await client.api('/print/shares')
.post(printerShare);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider , consulte a documentação do SDK .
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/v1.0/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/print/shares"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphPrinterShare *printerShare = [[MSGraphPrinterShare alloc] init];
[printerShare setDisplayName:@"ShareName"];
[printerShare setAllowAllUsers: false];
NSError *error;
NSData *printerShareData = [printerShare getSerializedDataWithError:&error];
[urlRequest setHTTPBody:printerShareData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider , consulte a documentação do SDK .
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
PrinterShare printerShare = new PrinterShare();
printerShare.displayName = "ShareName";
printerShare.allowAllUsers = false;
printerShare.additionalDataManager().put("printer@odata.bind", new JsonPrimitive("https://graph.microsoft.com/v1.0/print/printers/{printerId}"));
graphClient.print().shares()
.buildRequest()
.post(printerShare);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider , consulte a documentação do SDK .
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewPrinterShare()
displayName := "ShareName"
requestBody.SetDisplayName(&displayName)
allowAllUsers := false
requestBody.SetAllowAllUsers(&allowAllUsers)
requestBody.SetAdditionalData(map[string]interface{}{
"printer@odata.bind": "https://graph.microsoft.com/v1.0/print/printers/{printerId}",
}
result, err := graphClient.Print().Shares().Post(requestBody)
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider , consulte a documentação do SDK .
Import-Module Microsoft.Graph.Devices.CloudPrint
$params = @{
DisplayName = "ShareName"
AllowAllUsers = $false
"Printer@odata.bind" = "https://graph.microsoft.com/v1.0/print/printers/{printerId}"
}
New-MgPrintShare -BodyParameter $params
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider , consulte a documentação do SDK .
Resposta
Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#print/shares/$entity",
"id": "d837c17b-3296-4384-a053-828d56e10f50",
"displayName": "ShareName",
"createdDateTime": "2020-02-04T00:00:00.0000000Z",
"isAcceptingJobs": true,
"allowAllUsers": false,
"status": {
"state": "ready",
"details": [],
"description": ""
}
}