POST https://graph.microsoft.com/v1.0/teams/871dbd5c-3a6a-4392-bfe1-042452793a50/schedule/timeCards
Content-Type: application/json
{
"clockInEvent": {
"dateTime": "2025-01-07T21:00:00.000Z",
"isAtApprovedLocation": true,
"notes": {
"content": "Started late due to traffic in CA 237",
"contentType": "text"
}
},
"clockOutEvent": {
"dateTime": "2025-01-07T21:30:00.000Z",
"isAtApprovedLocation": true
}
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new TimeCard
{
ClockInEvent = new TimeCardEvent
{
DateTime = DateTimeOffset.Parse("2025-01-07T21:00:00.000Z"),
IsAtApprovedLocation = true,
Notes = new ItemBody
{
Content = "Started late due to traffic in CA 237",
ContentType = BodyType.Text,
},
},
ClockOutEvent = new TimeCardEvent
{
DateTime = DateTimeOffset.Parse("2025-01-07T21:30:00.000Z"),
IsAtApprovedLocation = true,
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Teams["{team-id}"].Schedule.TimeCards.PostAsync(requestBody);
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
TimeCard timeCard = new TimeCard();
TimeCardEvent clockInEvent = new TimeCardEvent();
OffsetDateTime dateTime = OffsetDateTime.parse("2025-01-07T21:00:00.000Z");
clockInEvent.setDateTime(dateTime);
clockInEvent.setIsAtApprovedLocation(true);
ItemBody notes = new ItemBody();
notes.setContent("Started late due to traffic in CA 237");
notes.setContentType(BodyType.Text);
clockInEvent.setNotes(notes);
timeCard.setClockInEvent(clockInEvent);
TimeCardEvent clockOutEvent = new TimeCardEvent();
OffsetDateTime dateTime1 = OffsetDateTime.parse("2025-01-07T21:30:00.000Z");
clockOutEvent.setDateTime(dateTime1);
clockOutEvent.setIsAtApprovedLocation(true);
timeCard.setClockOutEvent(clockOutEvent);
TimeCard result = graphClient.teams().byTeamId("{team-id}").schedule().timeCards().post(timeCard);
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\TimeCard;
use Microsoft\Graph\Generated\Models\TimeCardEvent;
use Microsoft\Graph\Generated\Models\ItemBody;
use Microsoft\Graph\Generated\Models\BodyType;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new TimeCard();
$clockInEvent = new TimeCardEvent();
$clockInEvent->setDateTime(new \DateTime('2025-01-07T21:00:00.000Z'));
$clockInEvent->setIsAtApprovedLocation(true);
$clockInEventNotes = new ItemBody();
$clockInEventNotes->setContent('Started late due to traffic in CA 237');
$clockInEventNotes->setContentType(new BodyType('text'));
$clockInEvent->setNotes($clockInEventNotes);
$requestBody->setClockInEvent($clockInEvent);
$clockOutEvent = new TimeCardEvent();
$clockOutEvent->setDateTime(new \DateTime('2025-01-07T21:30:00.000Z'));
$clockOutEvent->setIsAtApprovedLocation(true);
$requestBody->setClockOutEvent($clockOutEvent);
$result = $graphServiceClient->teams()->byTeamId('team-id')->schedule()->timeCards()->post($requestBody)->wait();
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.time_card import TimeCard
from msgraph.generated.models.time_card_event import TimeCardEvent
from msgraph.generated.models.item_body import ItemBody
from msgraph.generated.models.body_type import BodyType
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = TimeCard(
clock_in_event = TimeCardEvent(
date_time = "2025-01-07T21:00:00.000Z",
is_at_approved_location = True,
notes = ItemBody(
content = "Started late due to traffic in CA 237",
content_type = BodyType.Text,
),
),
clock_out_event = TimeCardEvent(
date_time = "2025-01-07T21:30:00.000Z",
is_at_approved_location = True,
),
)
result = await graph_client.teams.by_team_id('team-id').schedule.time_cards.post(request_body)