Package: crisp-api
Crisp API WrapperThe Crisp API Python wrapper. Authenticate, send messages, fetch conversations, access your agent accounts from your Python code.Copyright 2023 Crisp IM SAS. See LICENSE for copying information.📝 Implements:REST API Reference (V1)at revision: 16/01/2023😘 Maintainers:@valeriansaliou,@eliottvincentUsageYou may follow theREST API Quickstartguide, which will get you running with the REST API in minutes.Install the library:pipinstallcrisp-apiThen, import it:fromcrisp_apiimportCrispConstruct a new authenticated Crisp client with youridentifierandkeytokens.client=Crisp()client.set_tier("plugin")client.authenticate(identifier,key)Then, your client is ready to be consumed!AuthenticationTo authenticate against the API, obtain your authentication token keypair by following theREST API Authenticationguide. You'll get a token keypair made of 2 values.Keep your token keypair values private, and store them safely for long-term use.Then, add authentication parameters to yourclientinstance right after you create it:client=Crisp()# Authenticate to API with your plugin token (identifier, key)# eg. client.authenticate("13937834-f6ce-4556-ae4f-9e0c54faf038", "eb6c3623245521d7a6c35f5b29f3fa756e893f034ed551d84518961c5ff16dec")client.set_tier("plugin")client.authenticate(identifier,key)# Now, you can use authenticated API sections.Resource MethodsMost useful available Crisp API resources are implemented.Programmatic methods names are named after their label name in theREST API Reference.All methods that you will most likely need when building a Crisp integration are prefixed with a star symbol (⭐).In the following method prototypes,crispis to be replaced with your Crisp API instance. For example, instanciateclient = Crisp()and then call eg:client.website.list_conversations(website_id, 1).When calling a method that writes data to the API (eg. send a message with:client.website.send_message_in_conversation()), you need to submit it this way:website_id="88972681-a00c-4b3b-a383-cab281636484"session_id="session_9df2a21e-f113-41d4-8ed2-bad8b49cafd1"client.website.send_message_in_conversation(website_id,session_id,{"type":"text","content":"This message was sent from python-crisp-api! :)","from":"operator","origin":"chat"})⚠️ Note that, depending on your authentication token tier, which is eitheruserorplugin, you may not be allowed to use all methods from the library. When in doubt, refer to the library method descriptions below. Most likely, you are using aplugintoken.WebsiteWebsite Conversations⭐List Conversations[user,plugin]:Referenceclient.website.list_conversations(website_id, page_number)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"page_number=1client.website.list_conversations(website_id,page_number);Search Conversations[user,plugin]:Referenceclient.website.search_conversations(website_id, page_number, search_query, search_type, search_operator, include_empty, filter_unread, filter_resolved, filter_not_resolved, filter_mention, filter_assigned, filter_unassigned, filter_date_start, filter_date_end, order_date_created", order_date_updated)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"page_number=1client.website.list_conversations(website_id,page_number);Website Conversation⭐Create A New Conversation[user,plugin]:Referenceclient.website.create_new_conversation(website_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"client.website.create_new_conversation(website_id);Check If Conversation Exists[user,plugin]:Referenceclient.website.check_conversation_exists(website_id, session_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"client.website.check_conversation_exists(website_id,session_id);⭐Get A Conversation[user,plugin]:Referenceclient.website.get_conversation(website_id, session_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"client.website.get_conversation(website_id,session_id);Remove A Conversation[user,plugin]:Referenceclient.website.remove_conversation(website_id, session_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"client.website.remove_conversation(website_id,session_id);Initiate A Conversation With Existing Session[user,plugin]:Referenceclient.website.initiate_conversation_with_existing_session(website_id, session_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"client.website.initiate_conversation_with_existing_session(website_id,session_id);⭐Get Messages In Conversation[user,plugin]:Referenceclient.website.get_messages_in_conversation(website_id, session_id, query)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"client.website.get_messages_in_conversation(website_id,session_id,query);Send A Message In Conversation[user,plugin]:Referenceclient.website.send_message_in_conversation(website_id, session_id, query)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"query={"type":"text","from":"operator","origin":"chat","content":"Hey there! Need help?"}client.website.send_message_in_conversation(website_id,session_id,query);Get A Message In Conversation[user,plugin]:Referenceclient.website.get_message_in_conversation(website_id, session_id, fingerprint)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"fingerprint=524653764345client.website.get_message_in_conversation(website_id,session_id,fingerprint);Update A Message In Conversation[user,plugin]:Referenceclient.website.update_message_in_conversation(website_id, session_id, fingerprint, data)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"fingerprint=524653764345data="Hey there! Need help?"client.website.update_message_in_conversation(website_id,session_id,fingerprint,data);Compose A Message In Conversation[user,plugin]:Referenceclient.website.compose_message_in_conversation(website_id, session_id, data)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"data={"type":"start","from":"operator"}client.website.compose_message_in_conversation(website_id,session_id,data);⭐Mark Messages As Read In Conversation[user,plugin]:Referenceclient.website.mark_messages_read_in_conversation(website_id, session_id, data)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"data={"from":"operator","origin":"urn:crisp.im:slack:0","fingerprints":["5719231201"]}client.website.mark_messages_read_in_conversation(website_id,session_id,data);⭐Mark Messages As Delivered In Conversation[user,plugin]:Referenceclient.website.mark_messages_delivered_in_conversation(website_id, session_id, data)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"data={"from":"operator","origin":"urn:crisp.im:slack:0","fingerprints":["5719231201"]}client.website.mark_messages_delivered_in_conversation(website_id,session_id,data);⭐Get Conversation Routing Assign[user,plugin]:Referenceclient.website.get_conversation_routing_assign(website_id, session_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"client.website.get_conversation_routing_assign(website_id,session_id);⭐Assign Conversation Routing[user,plugin]:Referenceclient.website.assign_conversation_routing(website_id, session_id, data)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"data={"assigned":{"user_id":"a4c32c68-be91-4e29-8a05-976e93abbe3f"}}client.website.assign_conversation_routing(website_id,session_id,data);⭐Get Conversation Metas[user,plugin]:Referenceclient.website.get_conversation_metas(website_id, session_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"client.website.get_conversation_metas(website_id,session_id);⭐Update Conversation Metas[user,plugin]:Referenceclient.website.update_conversation_metas(website_id, session_id, data)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"data={"nickname":"John Doe","email":"john.doe@acme-inc.com","segments":["happy","customer","love"],"data":{"type":"customer","signup":"finished"}}client.website.update_conversation_metas(website_id,session_id,data);List Conversation Pages[user,plugin]:Referenceclient.website.list_conversation_pages(website_id, session_id, page_number)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"page_number=1client.website.list_conversation_pages(website_id,session_id,page_number);List Conversation Events[user,plugin]:Referenceclient.website.list_conversation_events(website_id, session_id, page_number)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"page_number=1client.website.list_conversation_events(website_id,session_id,page_number);List Conversation Files[user,plugin]:Referenceclient.website.list_conversation_files(website_id, session_id, page_number)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"page_number=1client.website.list_conversation_files(website_id,session_id,page_number);Get Conversation State[user,plugin]:Referenceclient.website.get_conversation_state(website_id, session_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"client.website.get_conversation_state(website_id,session_id);⭐Change Conversation State[user,plugin]:Referenceclient.website.change_conversation_state(website_id, session_id, data)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"data="unresolved"client.website.change_conversation_state(website_id,session_id,data);Get Block Status For Conversation[user,plugin]:Referenceclient.website.get_block_status_for_conversation(website_id, session_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"client.website.get_block_status_for_conversation(website_id,session_id);Block Incoming Messages For Conversation[user,plugin]:Referenceclient.website.block_incoming_messages_for_conversation(website_id, session_id, data)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"data=trueclient.website.block_incoming_messages_for_conversation(website_id,session_id,data);Request Email Transcript For Conversation[user,plugin]:Referenceclient.website.request_email_transcript_for_conversation(website_id, session_id, data)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"session_id="session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"data={"to":"operator","email":"valerian@crisp.chat"}client.website.request_email_transcript_for_conversation(website_id,session_id,data);Website People(these are your end-users)Get People Statistics[user,plugin]:Referenceclient.website.get_people_statistics(website_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"client.website.get_people_statistics(website_id);List People Segments[user,plugin]:Referenceclient.website.list_people_segments(website_id, page_number)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"page_number=1client.website.list_people_segments(website_id,page_number);⭐List People Profiles[user,plugin]:Referenceclient.website.list_people_profiles(website_id, page_number)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"page_number=1client.website.list_people_profiles(website_id,page_number);⭐Add New People Profile[user,plugin]:Referenceclient.website.add_new_people_profile(website_id, data)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"data={"email":"valerian@crisp.chat","person":{"nickname":"Valerian Saliou"}}client.website.add_new_people_profile(website_id,data);⭐Check If People Profile Exists[user,plugin]:Referenceclient.website.check_people_profile_exists(website_id, people_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"people_id="c5a2f70c-f605-4648-b47f-8c39d4b03a50"client.website.check_people_profile_exists(website_id,people_id);⭐Get People Profile[user,plugin]:Referenceclient.website.get_people_profile(website_id, people_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"people_id="c5a2f70c-f605-4648-b47f-8c39d4b03a50"client.website.get_people_profile(website_id,people_id);⭐Save People Profile[user,plugin]:Referenceclient.website.save_people_profile(website_id, people_id, data)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"people_id="c5a2f70c-f605-4648-b47f-8c39d4b03a50"data={"email":"valerian@crisp.chat","person":{"nickname":"Valerian Saliou"}}client.website.save_people_profile(website_id,people_id,data);⭐Update People Profile[user,plugin]:Referenceclient.website.update_people_profile(website_id, people_id, data)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"people_id="c5a2f70c-f605-4648-b47f-8c39d4b03a50"data={"email":"valerian@crisp.chat","person":{"nickname":"Valerian Saliou"}}client.website.update_people_profile(website_id,people_id,data);⭐Remove People Profile[user,plugin]:Referenceclient.website.remove_people_profile(website_id, people_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"people_id="c5a2f70c-f605-4648-b47f-8c39d4b03a50"client.website.remove_people_profile(website_id,people_id);List People Conversations[user,plugin]:Referenceclient.website.list_people_conversations(website_id, people_id, page_number)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"people_id="c5a2f70c-f605-4648-b47f-8c39d4b03a50"page_number=1client.website.list_people_conversations(website_id,people_id,page_number);Add A People Event[user,plugin]:Referenceclient.website.add_people_event(website_id, people_id, data)List People Events[user,plugin]:Referenceclient.website.list_people_events(website_id, people_id, page_number)Get People Data[user,plugin]:Referenceclient.website.get_people_data(website_id, people_id)Save People Data[user,plugin]:Referenceclient.website.save_people_data(website_id, people_id, data)Get People Subscription Status[user,plugin]:Referenceclient.website.get_people_subscription_status(website_id, people_id)Update People Subscription Status[user,plugin]:Referenceclient.website.update_people_subscription_status(website_id, people_id, data)👉 Notice: ThepeopleIDargument can be an email or thepeopleID.Website BaseCreate Website[user,plugin]:Referenceclient.website.create_website(data)See Exampleclient.website.create_website(data);Get A Website[user,plugin]:Referenceclient.website.get_website(website_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"client.website.get_website(website_id);Delete A Website[user]:Referenceclient.website.delete_website(website_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"client.website.delete_website(website_id);Website BatchBatch Resolve Items[user]:Referenceclient.website.batch_resolve_items(website_id, data)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"client.website.batch_resolve_items(website_id,data);Batch Read Items[user]:Referenceclient.website.batch_read_items(website_id, data)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"client.website.batch_read_items(website_id,data);Batch Remove Items[user]:Referenceclient.website.batch_remove_items(website_id, data)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"data=["session_19e5240f-0a8d-461e-a661-a3123fc6eec9","session_700c65e1-85e2-465a-b9ac-ecb5ec2c9881"]client.website.batch_remove_items(website_id,data);Website AvailabilityGet Website Availability Status[user,plugin]:Referenceclient.website.get_website_availability_status(website_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"client.website.get_website_availability_status(website_id);Website OperatorList Website Operators[user,plugin]:Referenceclient.website.list_website_operators(website_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"client.website.list_website_operators(website_id);List Last Active Website Operators[user,plugin]:Referenceclient.website.list_last_active_website_operators(website_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"client.website.list_last_active_website_operators(website_id);Website SettingsGet Website Settings[user,plugin]:Referenceclient.website.get_website_settings(website_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"client.website.get_website_settings(website_id);Update Website Settings[user,plugin]:Referenceclient.website.update_website_settings(website_id, data)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"data={"name":"Crisp","domain":"crisp.chat","logo":"https://storage.crisp.chat/users/avatar/website/8c842203-7ed8-4e29-a608-7cf78a7d2fcc/b6c2948d-b061-405e-91a9-2fdf855d1cc0.png","contact":{"email":"contact@crisp.chat","phone":"+33757905447"},"inbox":{"lock_removal":false,"force_operator_token":false},"emails":{"rating":true,"transcript":true,"enrich":true,"junk_filter":true},"chatbox":{"tile":"default","wait_game":false,"last_operator_face":false,"ongoing_operator_face":true,"activity_metrics":true,"operator_privacy":false,"availability_tooltip":true,"hide_vacation":false,"hide_on_away":false,"hide_on_mobile":false,"position_reverse":false,"email_visitors":false,"phone_visitors":false,"force_identify":false,"ignore_privacy":false,"visitor_compose":false,"file_transfer":true,"helpdesk_link":true,"helpdesk_only":false,"status_health_dead":true,"check_domain":false,"color_theme":"blue","text_theme":"default","welcome_message":"default","locale":"en","allowed_pages":[],"blocked_pages":["status/*/","docs.crisp.chat/*","crisp.chat/terms/","https://crisp.chat/privacy/"],"blocked_countries":["IT"],"blocked_locales":["fa","he"],"blocked_ips":["8.8.8.8","2001:0db8:85a3:0000:0000:8a2e:0370:7334","192.168.1.1/24"]}}client.website.update_website_settings(website_id,data);Website VisitorsCount Visitors[user,plugin]:Referenceclient.website.count_visitors(website_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"client.website.count_visitors(website_id);List Visitors[user,plugin]:Referenceclient.website.list_visitors(website_id, page_number)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"page_number=1client.website.list_visitors(website_id,page_number);PluginPlugin ConnectGet Plugin Connect Account[plugin]:Referenceclient.plugin.get_connect_account()See Exampleclient.plugin.get_connect_account();Check Plugin Connect Session Validity[plugin]:Referenceclient.plugin.check_connect_session_validity()See Exampleclient.plugin.check_connect_session_validity();List All Connected Websites[plugin]:Referenceclient.plugin.list_all_connect_websites(page_number, filter_configured)See Examplepage_number=1client.plugin.list_all_connect_websites(page_number,filter_configured);Plugin SubscriptionList All Active Subscriptions[user]:Referenceclient.plugin.list_all_active_subscriptions()See Exampleclient.plugin.list_all_active_subscriptions();List Subscriptions For Website[user]:Referenceclient.plugin.list_subscriptions_website(website_id)Get Subscription Details[user]:Referenceclient.plugin.get_subscription_details(website_id, plugin_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"plugin_id="c64f3595-adee-425a-8d3a-89d47f7ed6bb"client.plugin.get_subscription_details(website_id,plugin_id);Subscribe Website To Plugin[user]:Referenceclient.plugin.subscribe_plugin_to_website(website_id)Unsubscribe Plugin From Website[user]:Referenceclient.plugin.unsubscribe_plugin_from_website(website_id, plugin_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"plugin_id="c64f3595-adee-425a-8d3a-89d47f7ed6bb"client.plugin.unsubscribe_plugin_from_website(website_id,plugin_id);Get Subscription Settings[user,plugin]:Referenceclient.plugin.get_subscription_settings(website_id, plugin_id)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"plugin_id="c64f3595-adee-425a-8d3a-89d47f7ed6bb"client.plugin.get_subscription_settings(website_id,plugin_id);Save Subscription Settings[user,plugin]:Referenceclient.plugin.save_subscription_settings(website_id, plugin_id, settings)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"plugin_id="c64f3595-adee-425a-8d3a-89d47f7ed6bb"settings={"chatbox":{"25":"#bbbbbb"}}client.plugin.save_subscription_settings(website_id,plugin_id,settings);Update Subscription Settings[user,plugin]:Referenceclient.plugin.update_subscription_settings(website_id, plugin_id, settings)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"plugin_id="c64f3595-adee-425a-8d3a-89d47f7ed6bb"settings={"chatbox":{"25":"#bbbbbb"}}client.plugin.update_subscription_settings(website_id,plugin_id,settings);Forward Plugin Payload To Channel[user,plugin]:Referenceclient.plugin.forward_plugin_payload_to_channel(website_id, plugin_id, data)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"plugin_id="c64f3595-adee-425a-8d3a-89d47f7ed6bb"data={"namespace":"bot:step","payload":{"step":1}}client.plugin.forward_plugin_payload_to_channel(website_id,plugin_id,data);Dispatch Plugin Event[user,plugin]:Referenceclient.plugin.dispatch_plugin_event(website_id, plugin_id, data)See Examplewebsite_id="8c842203-7ed8-4e29-a608-7cf78a7d2fcc"plugin_id="c64f3595-adee-425a-8d3a-89d47f7ed6bb"data={"name":"bot-is-running","data":{"bot":"Sales","email":"valerian@crisp.chat"}}client.plugin.dispatch_plugin_event(website_id,plugin_id,data);BucketBucket URLGenerate Bucket URL[user,plugin]:Referenceclient.bucket.generate_bucket_url(data)See Exampleclient.bucket.generate_bucket_url(data);