Skip to content

Commit e855070

Browse files
feat(api): manual updates
adding skip and unskip endpoints
1 parent de49d43 commit e855070

9 files changed

Lines changed: 711 additions & 3 deletions

File tree

.stats.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
configured_endpoints: 72
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp/agentex-sdk-ad493b43ecb1652a9e522451c616e33775e628c1d79c224dff34855bd82c8c7c.yml
1+
configured_endpoints: 74
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sgp/agentex-sdk-f3f1b47fa785a0d7b4e1cce1932a2ab0c0b6531d67d499e6188292ea2a00c9d8.yml
33
openapi_spec_hash: 77044dc5774eb88f1541ebbe53b413a7
4-
config_hash: 50803c6c42bb738099163f3f4d3cdeed
4+
config_hash: 5c4e326f797c879e72d6bf32fc1ea49d

api.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,10 @@ from agentex.types.agents import (
7676
ScheduleResumeResponse,
7777
ScheduleResumeByNameResponse,
7878
ScheduleRetrieveByNameResponse,
79+
ScheduleSkipResponse,
7980
ScheduleTriggerResponse,
8081
ScheduleTriggerByNameResponse,
82+
ScheduleUnskipResponse,
8183
ScheduleUpdateByNameResponse,
8284
)
8385
```
@@ -95,8 +97,10 @@ Methods:
9597
- <code title="post /agents/{agent_id}/schedules/{schedule_id}/resume">client.agents.schedules.<a href="./src/agentex/resources/agents/schedules.py">resume</a>(schedule_id, \*, agent_id, \*\*<a href="src/agentex/types/agents/schedule_resume_params.py">params</a>) -> <a href="./src/agentex/types/agents/schedule_resume_response.py">ScheduleResumeResponse</a></code>
9698
- <code title="post /agents/{agent_id}/schedules/name/{name}/resume">client.agents.schedules.<a href="./src/agentex/resources/agents/schedules.py">resume_by_name</a>(name, \*, agent_id, \*\*<a href="src/agentex/types/agents/schedule_resume_by_name_params.py">params</a>) -> <a href="./src/agentex/types/agents/schedule_resume_by_name_response.py">ScheduleResumeByNameResponse</a></code>
9799
- <code title="get /agents/{agent_id}/schedules/name/{name}">client.agents.schedules.<a href="./src/agentex/resources/agents/schedules.py">retrieve_by_name</a>(name, \*, agent_id) -> <a href="./src/agentex/types/agents/schedule_retrieve_by_name_response.py">ScheduleRetrieveByNameResponse</a></code>
100+
- <code title="post /agents/{agent_id}/schedules/{schedule_id}/skip">client.agents.schedules.<a href="./src/agentex/resources/agents/schedules.py">skip</a>(schedule_id, \*, agent_id, \*\*<a href="src/agentex/types/agents/schedule_skip_params.py">params</a>) -> <a href="./src/agentex/types/agents/schedule_skip_response.py">ScheduleSkipResponse</a></code>
98101
- <code title="post /agents/{agent_id}/schedules/{schedule_id}/trigger">client.agents.schedules.<a href="./src/agentex/resources/agents/schedules.py">trigger</a>(schedule_id, \*, agent_id) -> <a href="./src/agentex/types/agents/schedule_trigger_response.py">ScheduleTriggerResponse</a></code>
99102
- <code title="post /agents/{agent_id}/schedules/name/{name}/trigger">client.agents.schedules.<a href="./src/agentex/resources/agents/schedules.py">trigger_by_name</a>(name, \*, agent_id) -> <a href="./src/agentex/types/agents/schedule_trigger_by_name_response.py">ScheduleTriggerByNameResponse</a></code>
103+
- <code title="post /agents/{agent_id}/schedules/{schedule_id}/unskip">client.agents.schedules.<a href="./src/agentex/resources/agents/schedules.py">unskip</a>(schedule_id, \*, agent_id, \*\*<a href="src/agentex/types/agents/schedule_unskip_params.py">params</a>) -> <a href="./src/agentex/types/agents/schedule_unskip_response.py">ScheduleUnskipResponse</a></code>
100104
- <code title="patch /agents/{agent_id}/schedules/name/{name}">client.agents.schedules.<a href="./src/agentex/resources/agents/schedules.py">update_by_name</a>(path_name, \*, agent_id, \*\*<a href="src/agentex/types/agents/schedule_update_by_name_params.py">params</a>) -> <a href="./src/agentex/types/agents/schedule_update_by_name_response.py">ScheduleUpdateByNameResponse</a></code>
101105

102106
# Tasks

src/agentex/resources/agents/schedules.py

Lines changed: 200 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,19 +20,23 @@
2020
from ..._base_client import make_request_options
2121
from ...types.agents import (
2222
schedule_list_params,
23+
schedule_skip_params,
2324
schedule_pause_params,
2425
schedule_create_params,
2526
schedule_resume_params,
27+
schedule_unskip_params,
2628
schedule_update_params,
2729
schedule_pause_by_name_params,
2830
schedule_resume_by_name_params,
2931
schedule_update_by_name_params,
3032
)
3133
from ...types.shared.delete_response import DeleteResponse
3234
from ...types.agents.schedule_list_response import ScheduleListResponse
35+
from ...types.agents.schedule_skip_response import ScheduleSkipResponse
3336
from ...types.agents.schedule_pause_response import SchedulePauseResponse
3437
from ...types.agents.schedule_create_response import ScheduleCreateResponse
3538
from ...types.agents.schedule_resume_response import ScheduleResumeResponse
39+
from ...types.agents.schedule_unskip_response import ScheduleUnskipResponse
3640
from ...types.agents.schedule_update_response import ScheduleUpdateResponse
3741
from ...types.agents.schedule_trigger_response import ScheduleTriggerResponse
3842
from ...types.agents.schedule_retrieve_response import ScheduleRetrieveResponse
@@ -579,6 +583,48 @@ def retrieve_by_name(
579583
cast_to=ScheduleRetrieveByNameResponse,
580584
)
581585

586+
def skip(
587+
self,
588+
schedule_id: str,
589+
*,
590+
agent_id: str,
591+
scheduled_time: Union[str, datetime],
592+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
593+
# The extra values given here take precedence over values defined on the client or passed to this method.
594+
extra_headers: Headers | None = None,
595+
extra_query: Query | None = None,
596+
extra_body: Body | None = None,
597+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
598+
) -> ScheduleSkipResponse:
599+
"""
600+
Skip a recurring fire of the schedule.
601+
602+
Args:
603+
scheduled_time: Specific scheduled fire time to skip.
604+
605+
extra_headers: Send extra headers
606+
607+
extra_query: Add additional query parameters to the request
608+
609+
extra_body: Add additional JSON properties to the request
610+
611+
timeout: Override the client-level default timeout for this request, in seconds
612+
"""
613+
if not agent_id:
614+
raise ValueError(f"Expected a non-empty value for `agent_id` but received {agent_id!r}")
615+
if not schedule_id:
616+
raise ValueError(f"Expected a non-empty value for `schedule_id` but received {schedule_id!r}")
617+
return self._post(
618+
path_template(
619+
"/agents/{agent_id}/schedules/{schedule_id}/skip", agent_id=agent_id, schedule_id=schedule_id
620+
),
621+
body=maybe_transform({"scheduled_time": scheduled_time}, schedule_skip_params.ScheduleSkipParams),
622+
options=make_request_options(
623+
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
624+
),
625+
cast_to=ScheduleSkipResponse,
626+
)
627+
582628
def trigger(
583629
self,
584630
schedule_id: str,
@@ -654,6 +700,48 @@ def trigger_by_name(
654700
cast_to=ScheduleTriggerByNameResponse,
655701
)
656702

703+
def unskip(
704+
self,
705+
schedule_id: str,
706+
*,
707+
agent_id: str,
708+
scheduled_time: Union[str, datetime],
709+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
710+
# The extra values given here take precedence over values defined on the client or passed to this method.
711+
extra_headers: Headers | None = None,
712+
extra_query: Query | None = None,
713+
extra_body: Body | None = None,
714+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
715+
) -> ScheduleUnskipResponse:
716+
"""
717+
Remove a skip for a recurring fire of the schedule.
718+
719+
Args:
720+
scheduled_time: Specific scheduled fire time to unskip.
721+
722+
extra_headers: Send extra headers
723+
724+
extra_query: Add additional query parameters to the request
725+
726+
extra_body: Add additional JSON properties to the request
727+
728+
timeout: Override the client-level default timeout for this request, in seconds
729+
"""
730+
if not agent_id:
731+
raise ValueError(f"Expected a non-empty value for `agent_id` but received {agent_id!r}")
732+
if not schedule_id:
733+
raise ValueError(f"Expected a non-empty value for `schedule_id` but received {schedule_id!r}")
734+
return self._post(
735+
path_template(
736+
"/agents/{agent_id}/schedules/{schedule_id}/unskip", agent_id=agent_id, schedule_id=schedule_id
737+
),
738+
body=maybe_transform({"scheduled_time": scheduled_time}, schedule_unskip_params.ScheduleUnskipParams),
739+
options=make_request_options(
740+
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
741+
),
742+
cast_to=ScheduleUnskipResponse,
743+
)
744+
657745
def update_by_name(
658746
self,
659747
path_name: str,
@@ -1274,6 +1362,50 @@ async def retrieve_by_name(
12741362
cast_to=ScheduleRetrieveByNameResponse,
12751363
)
12761364

1365+
async def skip(
1366+
self,
1367+
schedule_id: str,
1368+
*,
1369+
agent_id: str,
1370+
scheduled_time: Union[str, datetime],
1371+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1372+
# The extra values given here take precedence over values defined on the client or passed to this method.
1373+
extra_headers: Headers | None = None,
1374+
extra_query: Query | None = None,
1375+
extra_body: Body | None = None,
1376+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
1377+
) -> ScheduleSkipResponse:
1378+
"""
1379+
Skip a recurring fire of the schedule.
1380+
1381+
Args:
1382+
scheduled_time: Specific scheduled fire time to skip.
1383+
1384+
extra_headers: Send extra headers
1385+
1386+
extra_query: Add additional query parameters to the request
1387+
1388+
extra_body: Add additional JSON properties to the request
1389+
1390+
timeout: Override the client-level default timeout for this request, in seconds
1391+
"""
1392+
if not agent_id:
1393+
raise ValueError(f"Expected a non-empty value for `agent_id` but received {agent_id!r}")
1394+
if not schedule_id:
1395+
raise ValueError(f"Expected a non-empty value for `schedule_id` but received {schedule_id!r}")
1396+
return await self._post(
1397+
path_template(
1398+
"/agents/{agent_id}/schedules/{schedule_id}/skip", agent_id=agent_id, schedule_id=schedule_id
1399+
),
1400+
body=await async_maybe_transform(
1401+
{"scheduled_time": scheduled_time}, schedule_skip_params.ScheduleSkipParams
1402+
),
1403+
options=make_request_options(
1404+
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
1405+
),
1406+
cast_to=ScheduleSkipResponse,
1407+
)
1408+
12771409
async def trigger(
12781410
self,
12791411
schedule_id: str,
@@ -1349,6 +1481,50 @@ async def trigger_by_name(
13491481
cast_to=ScheduleTriggerByNameResponse,
13501482
)
13511483

1484+
async def unskip(
1485+
self,
1486+
schedule_id: str,
1487+
*,
1488+
agent_id: str,
1489+
scheduled_time: Union[str, datetime],
1490+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1491+
# The extra values given here take precedence over values defined on the client or passed to this method.
1492+
extra_headers: Headers | None = None,
1493+
extra_query: Query | None = None,
1494+
extra_body: Body | None = None,
1495+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
1496+
) -> ScheduleUnskipResponse:
1497+
"""
1498+
Remove a skip for a recurring fire of the schedule.
1499+
1500+
Args:
1501+
scheduled_time: Specific scheduled fire time to unskip.
1502+
1503+
extra_headers: Send extra headers
1504+
1505+
extra_query: Add additional query parameters to the request
1506+
1507+
extra_body: Add additional JSON properties to the request
1508+
1509+
timeout: Override the client-level default timeout for this request, in seconds
1510+
"""
1511+
if not agent_id:
1512+
raise ValueError(f"Expected a non-empty value for `agent_id` but received {agent_id!r}")
1513+
if not schedule_id:
1514+
raise ValueError(f"Expected a non-empty value for `schedule_id` but received {schedule_id!r}")
1515+
return await self._post(
1516+
path_template(
1517+
"/agents/{agent_id}/schedules/{schedule_id}/unskip", agent_id=agent_id, schedule_id=schedule_id
1518+
),
1519+
body=await async_maybe_transform(
1520+
{"scheduled_time": scheduled_time}, schedule_unskip_params.ScheduleUnskipParams
1521+
),
1522+
options=make_request_options(
1523+
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
1524+
),
1525+
cast_to=ScheduleUnskipResponse,
1526+
)
1527+
13521528
async def update_by_name(
13531529
self,
13541530
path_name: str,
@@ -1472,12 +1648,18 @@ def __init__(self, schedules: SchedulesResource) -> None:
14721648
self.retrieve_by_name = to_raw_response_wrapper(
14731649
schedules.retrieve_by_name,
14741650
)
1651+
self.skip = to_raw_response_wrapper(
1652+
schedules.skip,
1653+
)
14751654
self.trigger = to_raw_response_wrapper(
14761655
schedules.trigger,
14771656
)
14781657
self.trigger_by_name = to_raw_response_wrapper(
14791658
schedules.trigger_by_name,
14801659
)
1660+
self.unskip = to_raw_response_wrapper(
1661+
schedules.unskip,
1662+
)
14811663
self.update_by_name = to_raw_response_wrapper(
14821664
schedules.update_by_name,
14831665
)
@@ -1520,12 +1702,18 @@ def __init__(self, schedules: AsyncSchedulesResource) -> None:
15201702
self.retrieve_by_name = async_to_raw_response_wrapper(
15211703
schedules.retrieve_by_name,
15221704
)
1705+
self.skip = async_to_raw_response_wrapper(
1706+
schedules.skip,
1707+
)
15231708
self.trigger = async_to_raw_response_wrapper(
15241709
schedules.trigger,
15251710
)
15261711
self.trigger_by_name = async_to_raw_response_wrapper(
15271712
schedules.trigger_by_name,
15281713
)
1714+
self.unskip = async_to_raw_response_wrapper(
1715+
schedules.unskip,
1716+
)
15291717
self.update_by_name = async_to_raw_response_wrapper(
15301718
schedules.update_by_name,
15311719
)
@@ -1568,12 +1756,18 @@ def __init__(self, schedules: SchedulesResource) -> None:
15681756
self.retrieve_by_name = to_streamed_response_wrapper(
15691757
schedules.retrieve_by_name,
15701758
)
1759+
self.skip = to_streamed_response_wrapper(
1760+
schedules.skip,
1761+
)
15711762
self.trigger = to_streamed_response_wrapper(
15721763
schedules.trigger,
15731764
)
15741765
self.trigger_by_name = to_streamed_response_wrapper(
15751766
schedules.trigger_by_name,
15761767
)
1768+
self.unskip = to_streamed_response_wrapper(
1769+
schedules.unskip,
1770+
)
15771771
self.update_by_name = to_streamed_response_wrapper(
15781772
schedules.update_by_name,
15791773
)
@@ -1616,12 +1810,18 @@ def __init__(self, schedules: AsyncSchedulesResource) -> None:
16161810
self.retrieve_by_name = async_to_streamed_response_wrapper(
16171811
schedules.retrieve_by_name,
16181812
)
1813+
self.skip = async_to_streamed_response_wrapper(
1814+
schedules.skip,
1815+
)
16191816
self.trigger = async_to_streamed_response_wrapper(
16201817
schedules.trigger,
16211818
)
16221819
self.trigger_by_name = async_to_streamed_response_wrapper(
16231820
schedules.trigger_by_name,
16241821
)
1822+
self.unskip = async_to_streamed_response_wrapper(
1823+
schedules.unskip,
1824+
)
16251825
self.update_by_name = async_to_streamed_response_wrapper(
16261826
schedules.update_by_name,
16271827
)

src/agentex/types/agents/__init__.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,21 @@
33
from __future__ import annotations
44

55
from .schedule_list_params import ScheduleListParams as ScheduleListParams
6+
from .schedule_skip_params import ScheduleSkipParams as ScheduleSkipParams
67
from .schedule_pause_params import SchedulePauseParams as SchedulePauseParams
78
from .deployment_list_params import DeploymentListParams as DeploymentListParams
89
from .schedule_create_params import ScheduleCreateParams as ScheduleCreateParams
910
from .schedule_list_response import ScheduleListResponse as ScheduleListResponse
1011
from .schedule_resume_params import ScheduleResumeParams as ScheduleResumeParams
12+
from .schedule_skip_response import ScheduleSkipResponse as ScheduleSkipResponse
13+
from .schedule_unskip_params import ScheduleUnskipParams as ScheduleUnskipParams
1114
from .schedule_update_params import ScheduleUpdateParams as ScheduleUpdateParams
1215
from .schedule_pause_response import SchedulePauseResponse as SchedulePauseResponse
1316
from .deployment_create_params import DeploymentCreateParams as DeploymentCreateParams
1417
from .deployment_list_response import DeploymentListResponse as DeploymentListResponse
1518
from .schedule_create_response import ScheduleCreateResponse as ScheduleCreateResponse
1619
from .schedule_resume_response import ScheduleResumeResponse as ScheduleResumeResponse
20+
from .schedule_unskip_response import ScheduleUnskipResponse as ScheduleUnskipResponse
1721
from .schedule_update_response import ScheduleUpdateResponse as ScheduleUpdateResponse
1822
from .schedule_trigger_response import ScheduleTriggerResponse as ScheduleTriggerResponse
1923
from .deployment_create_response import DeploymentCreateResponse as DeploymentCreateResponse
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2+
3+
from __future__ import annotations
4+
5+
from typing import Union
6+
from datetime import datetime
7+
from typing_extensions import Required, Annotated, TypedDict
8+
9+
from ..._utils import PropertyInfo
10+
11+
__all__ = ["ScheduleSkipParams"]
12+
13+
14+
class ScheduleSkipParams(TypedDict, total=False):
15+
agent_id: Required[str]
16+
17+
scheduled_time: Required[Annotated[Union[str, datetime], PropertyInfo(format="iso8601")]]
18+
"""Specific scheduled fire time to skip."""

0 commit comments

Comments
 (0)