11import asyncio
22import os
3+ # [developer-docs.sdk.python.sdk-import]-start
34from onepassword import *
4-
5+ # [developer-docs.sdk.python.sdk-import]-end
56
67async def main ():
8+ # [developer-docs.sdk.python.client-initialization]-start
79 # Gets your service account token from the OP_SERVICE_ACCOUNT_TOKEN environment variable.
810 token = os .getenv ("OP_SERVICE_ACCOUNT_TOKEN" )
911
@@ -14,18 +16,28 @@ async def main():
1416 integration_name = "My 1Password Integration" ,
1517 integration_version = "v1.0.0" ,
1618 )
19+ # [developer-docs.sdk.python.client-initialization]-end
1720
21+ # [developer-docs.sdk.python.list-vaults]-start
1822 vaults = await client .vaults .list_all ()
1923 async for vault in vaults :
2024 print (vault .title )
21- items = await client .items .list_all (vault .id )
22- async for item in items :
23- print (item .title )
25+ # [developer-docs.sdk.python.list-vaults]-end
26+
27+ # [developer-docs.sdk.python.list-items]-start
28+ items = await client .items .list_all (vault .id )
29+ async for item in items :
30+ print (item .title )
31+ # [developer-docs.sdk.python.list-items]-end
32+
2433
34+ # [developer-docs.sdk.python.resolve-secret]-start
2535 # Retrieves a secret from 1Password. Takes a secret reference as input and returns the secret to which it points.
2636 value = await client .secrets .resolve ("op://vault/item/field" )
2737 print (value )
38+ # [developer-docs.sdk.python.resolve-secret]-end
2839
40+ # [developer-docs.sdk.python.create-item]-start
2941 # Create an Item and add it to your vault.
3042 to_create = ItemCreateParams (
3143 title = "MyName" ,
@@ -63,31 +75,38 @@ async def main():
6375 ],
6476 )
6577 created_item = await client .items .create (to_create )
78+ # [developer-docs.sdk.python.create-item]-end
6679
6780 print (dict (created_item ))
6881
82+ # [developer-docs.sdk.python.get-totp-item-crud]-start
6983 # Fetch a totp code from the item
7084 for f in created_item .fields :
7185 if f .field_type == "Totp" :
7286 if f .details .content .error_message is not None :
7387 print (f .details .content .error_message )
7488 else :
7589 print (f .details .content .code )
90+ # [developer-docs.sdk.python.get-totp-item-crud]-end
7691
92+ # [developer-docs.sdk.python.get-item]-start
7793 # Retrieve an item from your vault.
7894 item = await client .items .get (created_item .vault_id , created_item .id )
95+ # [developer-docs.sdk.python.get-item]-end
7996
8097 print (dict (item ))
8198
99+ # [developer-docs.sdk.python.edit-item]-start
82100 # Update a field in your item
83101 item .fields [0 ].value = "new_value"
84102 updated_item = await client .items .put (item )
103+ # [developer-docs.sdk.python.edit-item]-end
85104
86105 print (dict (updated_item ))
87-
106+ # [developer-docs.sdk.python.delete-item]-start
88107 # Delete a item from your vault.
89108 await client .items .delete (created_item .vault_id , updated_item .id )
90-
109+ # [developer-docs.sdk.python.delete-item]-end
91110
92111if __name__ == "__main__" :
93112 asyncio .run (main ())
0 commit comments