Share via


SentSharesClient.CreateSentShareInvitationAsync Method

Definition

[Protocol Method] Create a sent share invitation.

  • This protocol method allows explicit creation of the request and processing of the response for advanced scenarios.
public virtual System.Threading.Tasks.Task<Azure.Response> CreateSentShareInvitationAsync (string sentShareId, string sentShareInvitationId, Azure.Core.RequestContent content, Azure.RequestContext context = default);
abstract member CreateSentShareInvitationAsync : string * string * Azure.Core.RequestContent * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Response>
override this.CreateSentShareInvitationAsync : string * string * Azure.Core.RequestContent * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Response>
Public Overridable Function CreateSentShareInvitationAsync (sentShareId As String, sentShareInvitationId As String, content As RequestContent, Optional context As RequestContext = Nothing) As Task(Of Response)

Parameters

sentShareId
String

Id of the sent share.

sentShareInvitationId
String

Id of the sent share invitation.

content
RequestContent

The content to send as the body of the request.

context
RequestContext

The request context, which can override default behaviors of the client pipeline on a per-call basis.

Returns

The response returned from the service.

Exceptions

sentShareId, sentShareInvitationId or content is null.

sentShareId or sentShareInvitationId is an empty string, and was expected to be non-empty.

Service returned a non-success status code.

Examples

This sample shows how to call CreateSentShareInvitationAsync with required parameters and request content, and how to parse the result.

var credential = new DefaultAzureCredential();
var endpoint = new Uri("<https://my-service.azure.com>");
var client = new SentSharesClient(endpoint, credential);

var data = new {
    properties = new {
        targetActiveDirectoryId = "73f411fe-4f43-4b4b-9cbd-6828d8f4cf9a",
        targetObjectId = "73f411fe-4f43-4b4b-9cbd-6828d8f4cf9a",
    },
    invitationKind = "Service",
};

Response response = await client.CreateSentShareInvitationAsync("<sentShareId>", "<sentShareInvitationId>", RequestContent.Create(data));

JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement;
Console.WriteLine(result.GetProperty("invitationKind").ToString());
Console.WriteLine(result.ToString());

This sample shows how to call CreateSentShareInvitationAsync with all parameters and request content, and how to parse the result.

var credential = new DefaultAzureCredential();
var endpoint = new Uri("<https://my-service.azure.com>");
var client = new SentSharesClient(endpoint, credential);

var data = new {
    properties = new {
        expirationDate = "2022-05-10T18:57:31.2311892Z",
        shareStatus = "Detached",
        targetActiveDirectoryId = "73f411fe-4f43-4b4b-9cbd-6828d8f4cf9a",
        targetObjectId = "73f411fe-4f43-4b4b-9cbd-6828d8f4cf9a",
    },
    invitationKind = "Service",
};

Response response = await client.CreateSentShareInvitationAsync("<sentShareId>", "<sentShareInvitationId>", RequestContent.Create(data));

JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement;
Console.WriteLine(result.GetProperty("invitationKind").ToString());
Console.WriteLine(result.GetProperty("id").ToString());
Console.WriteLine(result.GetProperty("type").ToString());

Remarks

Create a recipient for a given sent share

Below is the JSON schema for the request and response payloads.

Request Body:

This method takes one of the JSON objects below as a payload. Please select a JSON object to view the schema for this.

ServiceInvitationSchema for ServiceInvitation:
{
  properties: {
    expirationDate: string (ISO 8601 Format), # Optional. The time at which the invitation will expire. Represented in the standard date-time format as defined by [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339)
    senderEmail: string, # Optional. Email address of the sender.
    senderName: string, # Optional. Name of the sender
    senderTenantName: string, # Optional. Tenant name of the sender
    sentAt: string (ISO 8601 Format), # Optional. Gets the time at which the invitation was sent. Represented in the standard date-time format as defined by [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339)
    shareStatus: "Detached" | "Attached", # Optional. Share status.
    state: "Unknown" | "Succeeded" | "Creating" | "Deleting" | "Moving" | "Failed", # Optional. State of the resource
    targetActiveDirectoryId: Guid, # Required. The target azure active directory id the invitation is sent to.
    targetObjectId: Guid, # Required. The target object id in the azure active directory the invitation is sent to.
  }, # Required. Properties of the service invitation type.
  invitationKind: Service, # Required. The types of invitations.
  id: string, # Optional. The unique id of the resource.
  type: string, # Optional. Type of the resource.
}
~+ 1 more JSON objects
UserInvitationSchema for UserInvitation:
{
  properties: {
    expirationDate: string (ISO 8601 Format), # Optional. The time at which the invitation will expire. Represented in the standard date-time format as defined by [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339)
    notify: boolean, # Optional. Whether or not the recipient was notified via email.
    senderEmail: string, # Optional. Email address of the sender.
    senderName: string, # Optional. Name of the sender
    senderTenantName: string, # Optional. Tenant name of the sender
    sentAt: string (ISO 8601 Format), # Optional. Gets the time at which the invitation was sent. Represented in the standard date-time format as defined by [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339)
    shareStatus: "Detached" | "Attached", # Optional. Share status.
    state: "Unknown" | "Succeeded" | "Creating" | "Deleting" | "Moving" | "Failed", # Optional. State of the resource
    targetEmail: string, # Required. The receiver email for the invitation is being sent.
  }, # Required. Properties of the user invitation type.
  invitationKind: User, # Required. The types of invitations.
  id: string, # Optional. The unique id of the resource.
  type: string, # Optional. Type of the resource.
}

Response Body:

This method takes one of the JSON objects below as a payload. Please select a JSON object to view the schema for this.

ServiceInvitationSchema for ServiceInvitation:
{
  properties: {
    expirationDate: string (ISO 8601 Format), # Optional. The time at which the invitation will expire. Represented in the standard date-time format as defined by [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339)
    senderEmail: string, # Optional. Email address of the sender.
    senderName: string, # Optional. Name of the sender
    senderTenantName: string, # Optional. Tenant name of the sender
    sentAt: string (ISO 8601 Format), # Optional. Gets the time at which the invitation was sent. Represented in the standard date-time format as defined by [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339)
    shareStatus: "Detached" | "Attached", # Optional. Share status.
    state: "Unknown" | "Succeeded" | "Creating" | "Deleting" | "Moving" | "Failed", # Optional. State of the resource
    targetActiveDirectoryId: Guid, # Required. The target azure active directory id the invitation is sent to.
    targetObjectId: Guid, # Required. The target object id in the azure active directory the invitation is sent to.
  }, # Required. Properties of the service invitation type.
  invitationKind: Service, # Required. The types of invitations.
  id: string, # Optional. The unique id of the resource.
  type: string, # Optional. Type of the resource.
}
~+ 1 more JSON objects
UserInvitationSchema for UserInvitation:
{
  properties: {
    expirationDate: string (ISO 8601 Format), # Optional. The time at which the invitation will expire. Represented in the standard date-time format as defined by [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339)
    notify: boolean, # Optional. Whether or not the recipient was notified via email.
    senderEmail: string, # Optional. Email address of the sender.
    senderName: string, # Optional. Name of the sender
    senderTenantName: string, # Optional. Tenant name of the sender
    sentAt: string (ISO 8601 Format), # Optional. Gets the time at which the invitation was sent. Represented in the standard date-time format as defined by [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339)
    shareStatus: "Detached" | "Attached", # Optional. Share status.
    state: "Unknown" | "Succeeded" | "Creating" | "Deleting" | "Moving" | "Failed", # Optional. State of the resource
    targetEmail: string, # Required. The receiver email for the invitation is being sent.
  }, # Required. Properties of the user invitation type.
  invitationKind: User, # Required. The types of invitations.
  id: string, # Optional. The unique id of the resource.
  type: string, # Optional. Type of the resource.
}

Applies to