Referência de API de compromissos inteligentes
Use o conjunto de APIs de compromissos inteligentes para pesquisar assistentes relevantes, agendar e gerenciar reuniões. A API se baseia na API personalizada do Power Platform.
Nota
Todos os comandos nesta API usam mensagens POST.
Comandos de disponibilidade e agendamento
Comando | Descrição |
---|---|
GetSchedulingProperties | Recupera todas as informações relacionadas a tipos de reunião do ambiente do Dataverse. |
GetAvailableMeetingTimeSlots | Busca os intervalos de tempo disponíveis do assistente relevante com base no local, assunto, habilidades e intervalo de datas solicitados. |
CreateMeeting | Permite agendar uma reunião com os recursos do assistente solicitados. |
GetMeeting | Busca uma reunião agendada para um contato. |
CancelMeeting | Cancela uma reunião existente. |
GetSchedulingProperties
Descrição: recupera todas as informações relacionadas a tipos de reunião do ambiente do Dataverse.
Nome do plug-in: GetSchedulingPropertiesPlugin.cs
Solicitação HTTP: POST {{url}}/api/data/v9.0/msfsi_GetSchedulingProperties
Solicitar parâmetros de entrada (no corpo): vazio
Parâmetros de saída de resposta:
Nome do Parâmetro | Descrição | Tipo | Notas |
---|---|---|---|
Locais | Uma matriz de objetos de localização. Esses são locais que residem nos objetos MeetingType. | Matriz de objetos | Os objetos de local são preenchidos quando as reuniões são apenas no local. |
Tópicos | Uma matriz de objetos de tópico. Esses são tópicos que residem nos objetos MeetingType. | Matriz de objetos | |
MeetingTypes | uma matriz de MeetingTypes | Matriz de objetos | |
Objeto de local | |||
ID | A ID do local (entidade OrganizationalUnit). | Cadeia de caracteres | |
Nome | O nome da localização (entidade da ramificação). | Cadeia de caracteres | |
Endereço1 | A primeira linha no endereço da localização (entidade da ramificação). | Cadeia de caracteres | |
Endereço2 | A segunda linha no endereço da localização (entidade da ramificação). | Cadeia de caracteres | |
City | A cidade da localização (entidade de ramificação). | Cadeia de caracteres | |
StateOrProvince | O estado ou província da localização (entidade de ramificação). | Cadeia de caracteres | |
País/região | O país da localização (entidade da ramificação). | Cadeia de caracteres | |
PostalCode | O código postal da localização (entidade da ramificação). | Cadeia de caracteres | |
Telefone | O número de telefone da localização (entidade da ramificação). | Cadeia de caracteres | |
Objeto do tópico | |||
Identificação | A ID do tópico. | Cadeia de caracteres | |
Nome | O nome do tópico. | Cadeia de caracteres | |
Descrição | Uma descrição do tópico. | Cadeia de caracteres | |
Objeto MeetingType | |||
Identificação | A ID de MeetingType. | Cadeia de caracteres | |
Nome | O nome de MeetingType. | Cadeia de caracteres | |
Descrição | Uma descrição de MeetingType. | Cadeia de caracteres | |
Duração | A duração da reunião descrita por MeetingType. | Int | |
Notas | As notas para o participante da reunião a seguir. | Cadeia de caracteres | |
Tópicos | Uma matriz de IDs para os tópicos conectados a este MeetingType. | Cadeia de caracteres[] | Uma lista detalhada completa está disponível na matriz Tópicos. |
Locais | Uma matriz de IDs para os locais conectados a este MeetingType. | Cadeia de caracteres[] | Os objetos de local são preenchidos quando as reuniões são apenas no local. Uma lista detalhada completa pode ser encontrada na matriz Locais. |
Canal | O canal definido para este MeetingType. | Conjunto de opções |
Cada conjunto de opções é representado por um objeto que contém o valor e o rótulo. |
DefaultMethod | O método padrão definido para este MeetingType. | Conjunto de opções |
Cada conjunto de opções é representado por um objeto que contém o valor e o rótulo. |
Nota
Nem todos os parâmetros são retornados:
As reuniões apenas no local e sem ramificações não são exibidas.
As reuniões sem campos obrigatórios não são exibidas.
Entidades em estado inativo não são exibidas.
Os seguintes parâmetros podem não retornar valores:
Os parâmetros Channel e DefaultMethod não serão retornados se forem nulos.
Se nenhum local estiver conectado ao MeetingType, ele não terá a matriz Locais. Isso só será possível se o canal tiver um valor diferente de No local.
Talvez o parâmetro Topics não apareça se nenhum tópico estiver conectado ao MeetingType (por meio da entidade Connection).
Os parâmetros Id, Name, Description e Duration sempre fazem parte de cada elemento na resposta.
Topic e Location são matrizes que contêm entidades. Id é o único parâmetro obrigatório para os objetos Topic e Location.
Exemplo de resposta:
{
"@odata.context": "https://orgc7816042.crm.dynamics.com/api/data/v9.0/$metadata#Microsoft.Dynamics.CRM.msfsi_GetSchedulingPropertiesResponse",
"Locations": [
{
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Id": "0781fd19-f1a8-ec11-983f-000d3a323337",
"Name": "Woodgrove Oklahoma City branch",
"Address1": "91011 East Blue Stone Drive",
"Address2": "91011 East Blue Stone Drive",
"City": "Oklahoma City",
"Country": "USA",
"PostalCode": "64555",
"Telephone": "+1(917)145-4533"
},
{
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Id": "600ef125-f1a8-ec11-983f-000d3a323337",
"Name": "Woodgrove Savannah branch",
"Address1": "678 Van Hoose Drive",
"Address2": "678 Van Hoose Drive",
"City": "Savannah",
"Country": "USA",
"PostalCode": "48645",
"Telephone": "+1(403)123-4567"
}
],
"Topics": [
{
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Id": "5a007aa3-809f-ec11-b400-0022480b8113",
"Name": "Everyday banking",
"Description": "Account opening, credit cards, financial health check ups and general assistance subjects"
},
{
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Id": "eb4e85b5-819f-ec11-b400-0022480b8113",
"Name": "Loans",
"Description": "Mortgage, Loan consults, follow up and contracting meetings"
}
],
"MeetingTypes": [
{
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Id": "5ce28b83-899f-ec11-b400-0022480b8113",
"Name": "Apply for credit card",
"Description": "Submitting an application for a credit card program",
"Duration": 30,
"Topics@odata.type": "#Collection(String)",
"Topics": [
"5a007aa3-809f-ec11-b400-0022480b8113"
],
"Locations@odata.type": "#Collection(String)",
"Locations": [
"0781fd19-f1a8-ec11-983f-000d3a323337",
"600ef125-f1a8-ec11-983f-000d3a323337"
],
"Channel": {
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Value": 104800002,
"Label": "Online or on location"
},
"DefaultMethod": {
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Value": 104800000,
"Label": "Online"
}
},
{
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Id": "1167906a-8d9f-ec11-b400-0022480b8113",
"Name": "Mortgage Application phase 1",
"Description": "Onboarding meeting to submit a loan application for a specific property",
"Duration": 30,
"Topics@odata.type": "#Collection(String)",
"Topics": [
"eb4e85b5-819f-ec11-b400-0022480b8113"
],
"Locations@odata.type": "#Collection(String)",
"Channel": {
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Value": 104800002,
"Label": "Online only"
},
"DefaultMethod": {
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Value": 104800000,
"Label": "Online"
}
}
]
}
GetAvailableMeetingTimeSlots
Descrição: busca os intervalos de tempo disponíveis do assistente relevante com base no local, assunto, habilidades e intervalo de datas solicitados.
Nome do plug-in: GetTimeSlotsPlugin.cs
Solicitação HTTP: POST {{url}}/api/data/v9.0/msfsi_GetAvailableMeetingTimeSlots
Solicitar parâmetros de entrada (no corpo):
Nome do Parâmetro | Descrição | Type | Obrigatória | Notas |
---|---|---|---|---|
Tipo de Reunião | A ID do MeetingType que o usuário deseja pesquisar. | Cadeia de caracteres (ID msfsi_meetingtype) | Sim | O valor deste parâmetro deve ser um GUID válido. |
StartDateTime | A data e a hora inicial para pesquisar a disponibilidade. | DateTime | Sim | A hora fornecida deve estar em UTC. |
EndDateTime | A data e a hora final para pesquisar a disponibilidade. | DateTime | Sim | A hora fornecida deve estar em UTC. |
Local da Reunião Solicitada | A ID do local (OrganizationalUnit) que o usuário deseja pesquisar. | Cadeia de caracteres (Id de msdyn_organizationalunit) | Não | Obrigatório quando IsOnlineMeeting é definido como falso. O valor deste parâmetro deve ser um GUID válido. |
IsOnlineMeeting | Indica se o compromisso é uma reunião online ou não. | Booliano | Sim | |
Filtro de Habilidades | A matriz de cadeia de caracteres que contém todas as IDs das habilidades a serem incluídas na pesquisa de solicitação de disponibilidade. | Cadeia de caracteres[] (IDs características) | Não | Adicionar filtros que já estão definidos como padrão no modelo de grupo de recursos resultará em um erro. O valor deste parâmetro deve ser um GUID válido. |
Paginação | A cadeia de paginação. Se nenhum for fornecido, busca a primeira página. Caso contrário, retorna a página correspondente. | Cadeia de caracteres | Não |
Exemplo de solicitação:
{
"MeetingType": "5ce28b83-899f-ec11-b400-0022480b8113",
"StartDateTime": "2022-08-21T11:00:00+03:00",
"EndDateTime": "2022-08-23T12:00:00+03:00",
"IsOnlineMeeting": false,
"RequestedMeetingLocation": "cfc7f51f-f1a8-ec11-983f-000d3a323337",
"SkillFilter": [
"2953c0d2-d2d9-ec11-a7b6-000d3a3089fb"
],
"Paging": ""
}
Parâmetros de saída de resposta:
Nome do Parâmetro | Descrição | Tipo | Notas |
---|---|---|---|
Intervalos de tempo | Uma matriz de objetos Timeslots, representando os intervalos de tempo disponíveis retornados para os orientadores solicitados, tipo de reunião e local. | Matriz de objetos de intervalos de tempo | |
Próxima Paginação | A cadeia de caracteres de paginação usada para paginação. Se não houver resultado disponível, esse valor será nulo. | String | Para obter mais informações, acesse Documentação do URS. |
Objeto de intervalos de tempo | |||
StartTime | A data e hora de início especificadas na solicitação de pesquisa. | DateTime | A hora é retornada em UTC. |
EndTime | A data e hora de término especificadas na solicitação de pesquisa. | DateTime | A hora é retornada em UTC. |
Assistentes | Uma lista de objetos que representam os assistentes. Cada objeto contém uma ID e um nome de assistente. | Matriz de objetos | Essas IDs são usadas ao criar a reunião usando CreateMeeting e buscar as informações do recurso para exibição. Apenas um conjunto de assistentes é retornado para cada intervalo de tempo. Se o requisito para um tipo de reunião for para um único assistente na reunião, cada intervalo de tempo conterá apenas um valor. Se mais de um assistente estiver disponível, o mecanismo de agendamento priorizará os assistentes com base no contexto e na capacidade. |
Exemplo de resposta: alguns dos intervalos de tempo retornados foram removidos para fins de espaço.
Nota
NextPaging é adicionado quando mais de 20 intervalos de tempo são retornados.
{
"@odata.context": "https://demoenvironment.crm.dynamics.com/api/data/v9.0/$metadata#Microsoft.Dynamics.CRM.msfsi_GetAvailableMeetingTimeSlotsResponse",
"NextPaging": "{\"nte\":\"1\",\"nti\":\"2022-08-21T17:30:00.0000000Z\",\"res\":{\"nfr\":20,\"nft\":20,\"rbd\":{\"2022-08-21T08:00:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T08:30:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T09:00:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T09:30:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T10:00:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T10:30:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T11:00:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T11:30:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T12:00:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T12:30:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T13:00:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T13:30:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T14:00:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T14:30:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T15:00:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T15:30:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T16:00:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T16:30:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T17:00:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null},\"2022-08-21T17:30:00.0000000Z\":{\"cpl\":1,\"nfr\":1,\"nft\":1,\"tic\":null,\"tid\":null}}}}",
"Timeslots": [
{
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"StartTime": "2022-08-21T08:15:00Z",
"EndTime": "2022-08-21T08:45:00Z",
"Advisors@odata.type": "#Collection(Microsoft.Dynamics.CRM.crmbaseentity)",
"Advisors": [
{
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Id": "876b4623-5d08-ed11-82e4-000d3a364a5d",
"Name": "Temp Admin"
}
]
},
{
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"StartTime": "2022-08-21T08:45:00Z",
"EndTime": "2022-08-21T09:15:00Z",
"Advisors@odata.type": "#Collection(Microsoft.Dynamics.CRM.crmbaseentity)",
"Advisors": [
{
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Id": "876b4623-5d08-ed11-82e4-000d3a364a5d",
"Name": "Temp Admin"
}
]
}
]
}
CreateMeeting
Descrição: Permite agendar uma reunião com os recursos do assistente solicitados.
Nome do plug-in: CreateMeetingPlugin.cs
Solicitação HTTP: POST {{url}}/api/data/v9.0/msfsi_CreateMeeting
Solicitar parâmetros de entrada (no corpo):
Nome do Parâmetro | Descrição | Tipo | Obrigatória | Notas |
---|---|---|---|---|
Tipo de Reunião | A ID do MeetingType selecionado. | Cadeia de caracteres (msfsi_meetingtype) | Sim | O valor deste parâmetro deve ser um GUID válido. |
StartDateTime | As datas de início e de término da reunião. | DateTime | Sim | Os compromissos de preparação e resumo são adicionados ao calendário do assistente com base no tipo de reunião e na configuração do administrador. |
Contato | A ID de contato que representa o cliente que participa da reunião. | Cadeia de caracteres (ID do contato) | Sim | O valor deste parâmetro deve ser um GUID válido. |
IsOnlineMeeting | Indica se o compromisso é uma reunião online ou não. | Booliano | Sim | Se este valor for Falso, será obrigatório fornecer um local de reunião. |
Local da Reunião Solicitada | A ID do local (OrganizationalUnit) onde a reunião será realizada. | Cadeia de caracteres (Id de OrganizationalUnit(OU)) | Não | No caso de uma reunião online, este campo não é obrigatório. No caso de uma implementação de reunião online em que os assistentes online estejam em uma OrganizationalUnit(OU) específica, será necessária uma referência OU dedicada. |
RequestedAdvisors | Uma matriz das IDs de assistente necessárias (IDs de recursos reserváveis). Essas IDs são obtidas da matriz Assistentes fornecida na resposta GetAvailableMeetingTimeSlots. | EntityCollection ((Resources) | Sim | Para que a reserva seja bem-sucedida, os recursos devem ter usuários do sistema associados a eles. Esses usuários aparecem no campo Obrigatório do compromisso. Cadeias de caracteres na matriz devem ser GUIDs válidos. |
CustomerAdditionalNotes | Observe o que os clientes desejam compartilhar sobre a próxima reunião. | Cadeia de caracteres | Não | Este parâmetro aparece nas comunicações do cliente e na descrição do compromisso no aplicativo CRM. |
Exemplo de solicitação:
{
"MeetingType": "aaafeaad-8c9f-ec11-b400-0022480b8113",
"StartDateTime": "2022-8-17T12:30:00",
"Contact": "8788facf-828e-4333-8405-b825b0f29ea0",
"IsOnlineMeeting": false,
"RequestedMeetingLocation": "8bcdf8e8-eda8-ec11-983f-000d3a323337",
"RequestedAdvisors": ["8240fdbc-e20d-ed11-82e5-000d3a593e34"],
"CustomerAdditionalNotes": "Some test notes"
}
Parâmetros de saída de resposta:
Nome do Parâmetro | Descrição | Tipo | Notas |
---|---|---|---|
Identificação | Uma ID que representa a reunião agendada. | Cadeia de caracteres | Representa um GUID. |
StartTime | As datas de início e de término da reunião. | DateTime | A hora é fornecida em UTC. |
EndTime | A data e hora de término da reunião. | DateTime | A hora é fornecida em UTC. |
Duração | A duração da reunião agendada em minutos. | Int | |
IsOnline | Indica se o compromisso é uma reunião online ou não. | Booliano | |
CustomerAdditionalNotes | Observe o que os clientes desejam compartilhar sobre a reunião agendada. | Cadeia de caracteres | |
MeetingJoinUrl | O link para ingressar na reunião agendada. | Cadeia de caracteres | |
Estado | O estado da reunião agendada. | Conjunto de opções (objeto) |
Cada conjunto de opções é representado por um objeto que contém o valor e o rótulo. |
Localização | Um objeto do local da reunião para um compromisso no local. | Objeto | Este parâmetro não está vazio apenas para as reuniões no local. |
Consultores | Uma lista de objetos que representam os assistentes na reunião agendada. | Matriz de objetos | |
Tipo de Reunião | Um objeto que representa o MeetingType. | Objeto | |
Objeto de local | |||
Identificação | A ID do local (entidade OrganizationalUnit). | Cadeia de caracteres | Representa um GUID. |
Name | O nome da localização (entidade da ramificação). | String | |
Endereço1 | A primeira linha no endereço da localização (entidade da ramificação). | String | |
Endereço2 | A primeira linha no endereço da localização (entidade da ramificação). | String | |
City | A cidade da localização (entidade de ramificação). | Cadeia de caracteres | |
StateOrProvince | O estado ou província da localização (entidade de ramificação). | Cadeia de caracteres | |
País/região | O país da localização (entidade da ramificação). | Cadeia de caracteres | |
PostalCode | O código postal da localização (entidade da ramificação). | Cadeia de caracteres | |
Telefone | O número de telefone da localização (entidade da ramificação). | Cadeia de caracteres | |
Objeto do assistente | |||
Identificação | A Id do assistente (entidade de recurso reservável). | Cadeia de caracteres | Representa um GUID. |
Nome | O nome do assistente. | Cadeia de caracteres | |
Objeto MeetingType | |||
Identificação | A ID de MeetingType. | Cadeia de caracteres | |
Nome | O nome de MeetingType. | Cadeia de caracteres | |
Notas | As notas para o participante da reunião a seguir. | Cadeia de caracteres | |
Descrição | A descrição do MeetingType. | Cadeia de caracteres |
Exemplo de resposta:
{
"@odata.context": "https://aa-isdaily.crm.dynamics.com/api/data/v9.0/$metadata#expando/$entity",
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Id": "4d6d4b05-4e0f-ed11-82e5-00224822509a",
"StartTime": "2022-08-17T12:30:00Z",
"EndTime": "2022-08-17T13:15:00Z",
"Duration": 45,
"IsOnline": false,
"CustomerAdditionalNotes": "Some test notes",
"State": {
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Value": 3,
"Label": "Scheduled"
},
"Location": {
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Id": "8bcdf8e8-eda8-ec11-983f-000d3a323337",
"Name": "Woodgrove Anchorage branch",
"Address1": "123 Eastview Lane",
"City": "Anchorage"
},
"Advisors@odata.type": "#Collection(Microsoft.Dynamics.CRM.crmbaseentity)",
"Advisors": [
{
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Id": "f35a29b9-02b1-ec11-9840-000d3a9937ed",
"Name": "IS admin"
}
],
"MeetingType": {
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Id": "aaafeaad-8c9f-ec11-b400-0022480b8113",
"Name": "Setting Investment goals",
"Notes": "If this is your first planning meeting, please bring:\n1. 401(k) and other investment plan statements\n2. Mortgage and other debt statements\n3. Pay stubs for you and/or your spouse\n4. Your most recent tax return\n5. Your monthly budget of income and expenses",
"Description": "Creating wealth management goals"
}
}
GetMeeting
Descrição: busca uma reunião agendada para um contato.
Nome do plug-in: GetMeetingPlugin.cs
Solicitação HTTP: POST {{url}}/api/data/v9.0/msfsi_GetMeeting
Solicitar parâmetros de entrada (no corpo):
Nome do Parâmetro | Descrição | Tipo | Obrigatória | Notas |
---|---|---|---|---|
Reunião | A ID da reunião. | Cadeia de caracteres | Sim | O ID da reunião é obtida da resposta CreateMeeting. O valor deste parâmetro deve ser um GUID válido. |
Contato | A ID do cliente para quem a reunião é agendada. | Cadeia de caracteres | Sim | O valor deste parâmetro deve ser um GUID válido. |
Exemplo de solicitação:
{
"Meeting": "4d6d4b05-4e0f-ed11-82e5-00224822509a",
"Contact": "8788facf-828e-4333-8405-b825b0f29ea0"
}
Parâmetros de saída de resposta:
Nome do Parâmetro | Descrição | Tipo | Notas |
---|---|---|---|
Identificação | Uma ID que representa a reunião agendada. | Cadeia de caracteres | Representa um GUID. |
StartTime | As datas de início e de término da reunião. | DateTime | A hora é fornecida em UTC. |
EndTime | A data e hora de término da reunião. | DateTime | A hora é fornecida em UTC. |
Duração | A duração da reunião agendada em minutos. | Int | |
IsOnline | Indica se o compromisso é uma reunião online ou não. | Booliano | |
CustomerAdditionalNotes | Observe o que os clientes desejam compartilhar sobre a reunião agendada. | Cadeia de caracteres | |
MeetingJoinUrl | O link para ingressar na reunião agendada. | Cadeia de caracteres | |
Estado | O estado da reunião agendada. | Conjunto de opções (objeto) |
Cada conjunto de opções é representado por um objeto que contém o valor e o rótulo. |
Localização | Um objeto do local da reunião para um compromisso no local. | Objeto | Este parâmetro não está vazio apenas para as reuniões no local. |
Consultores | Uma lista de objetos que representam os assistentes na reunião agendada. | Matriz de objetos | |
Tipo de Reunião | Um objeto que representa o MeetingType. | Objeto | |
Objeto de local | |||
Identificação | A ID do local (entidade OrganizationalUnit). | Cadeia de caracteres | Representa um GUID. |
Name | O nome da localização (entidade da ramificação). | String | |
Endereço1 | A primeira linha no endereço da localização (entidade da ramificação). | String | |
Endereço2 | A primeira linha no endereço da localização (entidade da ramificação). | String | |
City | A cidade da localização (entidade de ramificação). | Cadeia de caracteres | |
StateOrProvince | O estado ou província da localização (entidade de ramificação). | Cadeia de caracteres | |
País/região | O país da localização (entidade da ramificação). | Cadeia de caracteres | |
PostalCode | O código postal da localização (entidade da ramificação). | Cadeia de caracteres | |
Telefone | O número de telefone da localização (entidade da ramificação). | Cadeia de caracteres | |
Objeto do assistente | |||
Identificação | A Id do assistente (entidade de recurso reservável). | Cadeia de caracteres | Representa um GUID. |
Nome | O nome do assistente. | Cadeia de caracteres | |
Objeto MeetingType | |||
Identificação | A ID de MeetingType. | Cadeia de caracteres | |
Nome | O nome de MeetingType. | Cadeia de caracteres | |
Notas | As notas para o participante da reunião a seguir. | Cadeia de caracteres | |
Descrição | A descrição do MeetingType. | Cadeia de caracteres |
Exemplo de resposta:
{
"@odata.context": "https://aa-isdaily.crm.dynamics.com/api/data/v9.0/$metadata#expando/$entity",
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Id": "4d6d4b05-4e0f-ed11-82e5-00224822509a",
"StartTime": "2022-08-17T12:30:00Z",
"EndTime": "2022-08-17T13:15:00Z",
"Duration": 45,
"IsOnline": false,
"CustomerAdditionalNotes": "Some test notes",
"State": {
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Value": 3,
"Label": "Scheduled"
},
"Location": {
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Id": "8bcdf8e8-eda8-ec11-983f-000d3a323337",
"Name": "Woodgrove Anchorage branch",
"Address1": "123 Eastview Lane",
"City": "Anchorage"
},
"Advisors@odata.type": "#Collection(Microsoft.Dynamics.CRM.crmbaseentity)",
"Advisors": [
{
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Id": "f35a29b9-02b1-ec11-9840-000d3a9937ed",
"Name": "IS admin"
}
],
"MeetingType": {
"@odata.type": "#Microsoft.Dynamics.CRM.expando",
"Id": "aaafeaad-8c9f-ec11-b400-0022480b8113",
"Name": "Setting Investment goals",
"Notes": "If this is your first planning meeting, please bring:\n1. 401(k) and other investment plan statements\n2. Mortgage and other debt statements\n3. Pay stubs for you and/or your spouse\n4. Your most recent tax return\n5. Your monthly budget of income and expenses",
"Description": "Creating wealth management goals"
}
}
CancelMeeting
Descrição: cancela uma reunião existente.
Nome do plug-in: CancelMeetingPlugin.cs
Solicitação HTTP: POST {{url}}/api/data/v9.0/msfsi_CancelMeeting
Solicitar parâmetros de entrada (no corpo):
Nome do Parâmetro | Descrição | Tipo | Obrigatória | Notes |
---|---|---|---|---|
Reunião | A ID da reunião a ser cancelada. | Cadeia de caracteres (ID do compromisso) | Sim | A ID da reunião é obtida da solicitação de busca de compromissos existentes para o cliente. Apenas reuniões ativas futuras podem ser canceladas. Compromissos de preparo e resumo vinculados à reunião com o cliente também são cancelados. O valor deste parâmetro deve ser um GUID válido. |
Contact | A ID do cliente para quem a reunião é agendada. | Cadeia de caracteres (ID do contato) | Sim | O valor deste parâmetro deve ser um GUID válido. |
Exemplo de solicitação:
{
"Meeting": "5d98de42-8c9f-ec11-b400-0022480b81c4",
"Contact": "ce43d612-4d9d-ec11-b400-0022480b8d8e"
"Appointment": {
"activityid": "5d98de42-8c9f-ec11-b400-0022480b81c4"
},
"Contact": {
"contactid": "ce43d612-4d9d-ec11-b400-0022480b8d8e"
}
}
Parâmetros de saída de resposta:
Nome do Parâmetro | Descrição | Tipo | Notas |
---|---|---|---|
IsAppointmentCancelled | Indica se a reunião é cancelada ou não. | Boolean | Apenas reuniões ativas futuras podem ser canceladas. |
Exemplo de resposta:
{
"@odata.context": "https://#####.crm.dynamics.com/api/data/v9.0/$metadata#Microsoft.Dynamics.CRM.msfsi_CancelMeetingResponse",
"IsMeetingCancelled": true
}
Comandos de busca de dados
O conjunto de APIs e aplicativos entregues para compromissos inteligentes deve fornecer informações suficientes. Os comandos de busca OData podem ser usados para recuperar informações sobre as entidades subjacentes usadas para as APIs. A busca de dados de entidades é feita usando consultas FetchXML padrão no Dataverse.
Saiba mais: Usar FetchXML para criar uma consulta.
Recomenda-se buscar a seguinte lista de entidades.
MeetingTopics: recupera uma lista de tópicos de reunião disponíveis. Um tópico é a entidade com base na qual você pode agrupar as reuniões em diferentes contêineres. Este é um valor opcional.
MeetingTypeTopic: representa um mapeamento para identificar o vínculo entre os tipos de reunião e um tópico. Certo tipo de reunião pode ser disponibilizado em vários tópicos. Se forem usados tópicos de reunião, certifique-se de agrupar as reuniões em seus contêineres de tópicos relevantes.
MeetingTypes: recupera a lista de tipos de reunião disponíveis.
MeetingType: recupera os detalhes de um tipo de reunião específico, como:
Métodos de reunião com suporte (online, pessoalmente ou ambos)
Descrição da reunião
Lista de filiais que oferecem esta reunião
Duração da reunião
Instruções do cliente para a reunião ao agendá-la.
Filiais: recupera uma lista de filiais compatíveis na solução de compromissos inteligentes. Essa lista deve ser cruzada com o tipo de reunião, para verificar se apenas as filiais com suporte ao serviço de reunião específico são disponibilizadas para os clientes selecionarem.
Filial: recupera os detalhes de uma filial específica, como o nome da filial, o código da filial e o endereço.
Compromissos: recupera uma lista de compromissos do cliente.
Compromisso: recupera os detalhes de um compromisso específico por ID de contato. Os detalhes incluem:
Status da consulta
Link para a reunião online
Notas adicionais do cliente adicionadas à reunião
Local da reunião
Assistentes necessários que participam da reunião
Descrição
BookableResources: recupera uma lista dos recursos disponíveis e seus detalhes, como nome e título.