Atualizar bookingAppointment

Namespace: microsoft.graph

Atualize as propriedades de um objeto bookingAppointment no bookingBusiness especificado.

Essa API está disponível nas seguintes implantações de nuvem nacional.

Serviço global Governo dos EUA L4 US Government L5 (DOD) China operada pela 21Vianet

Permissões

Escolha a(s) permissão(s) marcada(s) como menos privilegiada(s) para essa API. Use uma permissão ou permissões com privilégios mais altos somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.

Tipo de permissão Permissões menos privilegiadas Permissões com privilégios mais elevados
Delegado (conta corporativa ou de estudante) BookingsAppointment.ReadWrite.All Bookings.Manage.All, Bookings.ReadWrite.All
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Application BookingsAppointment.ReadWrite.All Bookings.Manage.All, Bookings.Read.All, Bookings.ReadWrite.All

Observação

Se você criar um aplicativo personalizado usando permissões de aplicativo, deverá seguir a validação de regras de negócios.

Solicitação HTTP

PATCH /solutions/bookingBusinesses/{id}/appointments/{id}

Cabeçalhos de solicitação

Nome Descrição
Autorização Portador {código}. Obrigatório.

Corpo da solicitação

No corpo da solicitação, forneça apenas os valores das propriedades a serem atualizadas. As propriedades existentes que não estão incluídas no corpo da solicitação mantêm seus valores anteriores ou são recalculadas com base nas alterações de outros valores de propriedade.

A tabela a seguir especifica as propriedades que podem ser atualizadas.

Propriedade Tipo Descrição
customerEmailAddress Cadeia de caracteres O endereço SMTP do bookingCustomer que marca o compromisso.
customerName Cadeia de caracteres O nome do cliente.
Notas do cliente Cadeia de caracteres Notas do cliente associadas a este compromisso. Você pode obter o valor somente ao ler este bookingAppointment por seu ID. Você pode definir essa propriedade somente quando cria inicialmente um compromisso com um novo cliente.
customerPhone Cadeia de caracteres O número de telefone do cliente.
clientes bookingCustomerColeta de informações Ele lista as propriedades do cliente para um compromisso. Um compromisso contém uma lista de informações do cliente e cada unidade indica as propriedades de um cliente que faz parte desse compromisso. Opcional.
customerTimeZone Cadeia de caracteres O fuso horário do cliente. Para obter uma lista de valores possíveis, consulte dateTimeTimeZone.
duração Duração A duração do compromisso, indicada em formato ISO8601 .
end dateTimeTimeZone A data, a hora e o fuso horário em que o compromisso termina.
invoiceStatus string O status da fatura. Os valores possíveis são: draft, reviewing, open, canceled, paid, e corrective.
isCustomerAllowedToManageBooking Booliano Indica que o cliente pode gerenciar reservas criadas pela equipe. O valor padrão é false.
filledAttendeesCount Int32 O número atual de clientes no compromisso. Obrigatório.
isLocationOnline Booliano True Indica que o compromisso é realizado online. O valor padrão é false.
maximumAttendeesCount Int32 O número máximo de clientes permitidos no compromisso. Obrigatório.
optOutOfCustomerEmail Booliano True indica que o bookingCustomer para este compromisso não deseja receber uma confirmação para este compromisso.
postBuffer Duração A quantidade de tempo para reservar após o término da consulta, para limpeza, por exemplo. O valor é expresso em formato ISO8601 .
preBuffer Duração A quantidade de tempo a reservar antes do início da consulta, para preparação, por exemplo. O valor é expresso em formato ISO8601 .
Preço Duplo O preço normal de um compromisso para o bookingService especificado.
priceType bookingPriceType Uma configuração para fornecer flexibilidade para a estrutura de preços dos serviços. Os valores possíveis são: undefined, fixedPrice, startingAt, hourlyfree, priceVaries, , callUs, , notSet, . unknownFutureValue
Lembretes Coleção bookingReminder A coleção de lembretes de clientes enviados para este compromisso. O valor desta propriedade está disponível apenas ao ler este bookingAppointment pelo seu ID.
selfServiceAppointmentId Cadeia de caracteres Outra ID de rastreamento para o compromisso, se o compromisso foi criado diretamente pelo cliente na página de agendamento, em vez de por um membro da equipe em nome do cliente.
serviceId Cadeia de caracteres A ID do bookingService associado a este compromisso.
serviceLocation location O local em que o serviço é entregue.
serviceName Cadeia de caracteres O nome do bookingService associado a este compromisso.
Esta propriedade é opcional ao criar um novo compromisso. Se não for especificado, ele será calculado a partir do serviço associado ao compromisso pela propriedade serviceId .
serviceNotes Cadeia de caracteres Notas de um bookingStaffMember. O valor desta propriedade está disponível apenas ao ler este bookingAppointment pelo seu ID.
smsNotificationsEnabled Booliano True indica que as notificações por SMS são enviadas aos clientes para o compromisso. O valor padrão é false.
staffMemberIds String collection A ID de cada bookingStaffMember agendado neste compromisso.
iniciar dateTimeTimeZone A data, a hora e o fuso horário em que o compromisso começa.

Observação

Se o número máximo de clientes (maximumAttedeesCount) permitido no serviço for maior que 1:

  • Certifique-se de que os clientes existem no Booking Calendar. Caso contrário, crie usando a operação Criar bookingCustomer .
  • Passe IDs de cliente válidas ao criar ou atualizar o compromisso. Se a ID do cliente for inválida, esse cliente não será incluído no objeto de compromisso.

Resposta

Se tiver êxito, este método retornará um código de resposta 204 No Content. Ele não retorna nada no corpo da resposta.

Exemplos

Exemplo 1: Alterar a data do serviço

Solicitação

O exemplo a seguir altera a data do serviço em um dia.

PATCH https://graph.microsoft.com/v1.0/solutions/bookingBusinesses/Contosolunchdelivery@contoso.com/appointments/AAMkADKnAAA=
Content-type: application/json

{
    "@odata.type":"#microsoft.graph.bookingAppointment",
    "end":{
        "@odata.type":"#microsoft.graph.dateTimeTimeZone",
        "dateTime":"2018-05-06T12:30:00.0000000+00:00",
        "timeZone":"UTC"
    },
    "start":{
        "@odata.type":"#microsoft.graph.dateTimeTimeZone",
        "dateTime":"2018-05-06T12:00:00.0000000+00:00",
        "timeZone":"UTC"
    }
}

Resposta

O exemplo a seguir mostra a resposta.

HTTP/1.1 204 No Content

Exemplo 2: Atualizar os clientes para um compromisso

O exemplo a seguir atualiza a matriz customers para um compromisso de vários clientes. A propriedade customers é uma matriz de substituição completa — inclua todos os clientes que devem fazer parte do compromisso, não apenas os novos.

Observação

  • Cada objeto na matriz customers deve incluir @odata.type definido como #microsoft.graph.bookingCustomerInformation. Omitir essa propriedade faz com que a solicitação falhe.
  • Inclua detalhes do cliente, como nome, emailAddress e telefone para cada entrada. A API não preenche automaticamente esses campos a partir de customerId — se omitidos, eles ficarão em branco no compromisso.
  • O customerId deve fazer referência a um bookingCustomer válido que existe no Booking Calendar. Se não existir, crie um usando a operação Criar bookingCustomer .
  • O bookingService associado deve ter maximumAttendeesCount maior que 1 para oferecer suporte a vários clientes.

Solicitação

PATCH https://graph.microsoft.com/v1.0/solutions/bookingBusinesses/Contosolunchdelivery@contoso.com/appointments/AAMkADKoAAA=
Content-type: application/json

{
    "@odata.type":"#microsoft.graph.bookingAppointment",
    "customers": [
        {
            "@odata.type": "#microsoft.graph.bookingCustomerInformation",
            "customerId": "cd56bb19-c348-42c6-af5c-09818c87fb8c",
            "name": "John Doe",
            "emailAddress": "john.doe@example.com",
            "phone": "313-555-5555"
        },
        {
            "@odata.type": "#microsoft.graph.bookingCustomerInformation",
            "customerId": "72f148fa-9a86-4c59-b277-f5089d9ea0e7",
            "name": "Jane Smith",
            "emailAddress": "jane.smith@example.com",
            "phone": "248-555-5678"
        }
    ]
}

Resposta

O exemplo a seguir mostra a resposta.

HTTP/1.1 204 No Content