Skip to Content
Odoo मेन्यू
  • Sign in
  • मुफ़्त में आज़माएं
  • ऐप्लिकेशन
    फ़ाइनेंस
    • अकाउंटिंग
    • इनवॉइसिंग
    • एक्सपेंस
    • स्प्रेडशीट (बीआई)
    • डॉक्यूमेंट्स
    • साइन
    सेल्स
    • सीआरएम
    • सेल्स
    • पीओएस शॉप
    • पीओएस रेस्टोरेंट
    • सब्सक्रिप्शन
    • रेंटल
    वेबसाइट
    • वेबसाइट बिल्डर
    • ई-कॉमर्स
    • ब्लॉग
    • फ़ोरम
    • लाइव चैट
    • ई-लर्निंग
    सप्लाई चेन
    • इन्वेंट्री
    • मैन्युफ़ैक्चरिंग
    • पीएलएम
    • परचेज़
    • मेंटेनेंस
    • क्वालिटी
    मानव संसाधन
    • कर्मचारी
    • रिक्रूटमेंट
    • टाइम ऑफ़
    • अप्रेज़ल
    • रेफ़रल
    • फ़्लीट
    मार्केटिंग
    • सोशल मार्केटिंग
    • ईमेल मार्केटिंग
    • एसएमएस मार्केटिंग
    • इवेंट
    • मार्केटिंग ऑटोमेशन
    • सर्वे
    सेवाएं
    • प्रोजेक्ट
    • टाइमशीट
    • फ़ील्ड सर्विस
    • हेल्पडेस्क
    • प्लानिंग
    • अपॉइंटमेंट
    प्रॉडक्टिविटी
    • डिस्कस
    • अप्रूवल
    • आईओटी
    • वीओआईपी
    • नॉलेज
    • WhatsApp
    तीसरे पक्ष के ऐप्लिकेशन Odoo स्टूडियो Odoo क्लाउड प्लेटफ़ॉर्म
  • इंडस्ट्री
    रीटेल
    • बुक स्टोर
    • क्लोदिंग स्टोर
    • फ़र्नीचर स्टोर
    • ग्रॉसरी स्टोर
    • हार्डवेयर स्टोर
    • टॉय स्टोर
    Food & Hospitality
    • बार और पब
    • रेस्टोरेंट
    • फ़ास्ट फ़ूड
    • Guest House
    • बेवरिज डिस्ट्रीब्यूटर
    • Hotel
    Real Estate
    • Real Estate Agency
    • आर्किटेक्चर फ़र्म
    • कंसट्रक्शन
    • एस्टेट मैनेजमेंट
    • गार्ड्निंग
    • प्रॉपर्टी ओनर असोसिएशन
    Consulting
    • Accounting Firm
    • Odoo पार्टनर
    • Marketing Agency
    • लॉ फ़र्म
    • टैलेंट ऐक्विज़िशन
    • ऑडिट & सर्टिफ़िकेशन
    मैन्युफ़ैक्चरिंग
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • कॉर्पोरेट गिफ़्ट
    हेल्थ & फिटनेस
    • स्पोर्ट्स क्लब
    • आईवियर स्टोर
    • फिटनेस सेंटर
    • वेलनेस प्रैक्टिशनर
    • फॉर्मेसी
    • हेयर सैलून
    Trades
    • Handyman
    • आईटी हॉर्डवेयर और सपोर्ट
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • एन्वायरमेंटल एजेंसी
    • बिलबोर्ड रेंटल
    • फ़ोटोग्राफी
    • बाइक लीजिंग
    • सॉफ़्टवेयर रीसेलर
    Browse all Industries
  • कम्यूनिटी
    सीखें
    • ट्यूटोरियल्स
    • दस्तावेज़
    • सर्टिफ़िकेशन
    • ट्रेनिंग
    • ब्लॉग
    • पॉडकास्ट
    शिक्षा को बढ़ावा दें
    • एजुकेशन प्रोग्राम
    • स्केल अप! बिजनेस गेम
    • Odoo के ऑफ़िस में आएं
    सॉफ़्टवेयर पाएं
    • डाउनलोड
    • वर्शन की तुलना करें
    • रिलीज़
    साथ मिलकर काम करें
    • Github
    • फ़ोरम
    • इवेंट
    • अनुवाद
    • पार्टनर बनें
    • Services for Partners
    • अपना अकाउंटिंग फ़र्म रजिस्टर करें
    सेवाएं पाएं
    • पार्टनर ढूंढें
    • अकाउंटेंट खोजें
    • सलाहकार की मदद लें
    • इम्प्लिमेंटेशन सेवाएं
    • कस्टमर रेफ़रेंस
    • सहायता
    • अपग्रेड
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    डेमो देखें
  • कीमत
  • सहायता

Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:

  • सीआरएम
  • e-Commerce
  • लेखांकन
  • इन्वेंटरी
  • PoS
  • प्रोजेक्ट
  • MRP
All apps
You need to be registered to interact with the community.
All Posts People Badges
टैग (View all)
odoo accounting v14 pos v15
About this forum
You need to be registered to interact with the community.
All Posts People Badges
टैग (View all)
odoo accounting v14 pos v15
About this forum
Help

Api External - help

Subscribe

Get notified when there's activity on this post

This question has been flagged
apiodoo16features
3 Replies
5196 Views
Avatar
akram.mokhtar@raiftextile.com

how to configure api correctly on odoo cloud?

i did it on  prem and it work fine but on cloud it does not

here is my python code :

import xmlrpc.client

import pandas as pd

from tabulate import tabulate



# Odoo API information

url = 'myurl'

db = 'mydatabsename'

username = 'myuser​'

password = 'my api key'


common = xmlrpc.client.ServerProxy('{}/xmlrpc/2/common'.format(url))

common.version()

print(common.version())


uid = common.authenticate(db, username, password, {})

models = xmlrpc.client.ServerProxy('{}/xmlrpc/2/object'.format(url))


print(models)


try:

    # Change the model to 'sale.order.line' and adjust the query as needed

    records = models.execute_kw(

        db, uid, password, 'sale.order.line', 'search_read',

        [[('state', '=', 'sale')]],

        {'fields': ['id','order_id','product_template_id', 'product_id','display_name', 'product_uom_qty', 'price_unit', 'product_uom', 'write_date', 'name' ,'qty_delivered'],

         'limit': 100, 'order': 'write_date desc'}

    )


    # Extract relevant fields and flatten the data

    data = []

    for record in records:

        product_info = models.execute_kw(

            db, uid, password, 'product.product', 'read',

            [[record['product_id'][0]]],

            {'fields': ['name']}

        )[0]


        data.append({

            'Date': record['write_date'],

            'Sales Order Number': record['order_id'],

            'Product': record['name'],

            #'Product': product_info.get('name', ''),

            #'Product Full Name': record['display_name'],

            'Quantity': record['product_uom_qty'],

            'Price Per Unit': record['price_unit'],

            'Qty Delivered': record['qty_delivered']

            #'Unit': record['product_uom']

        })


    df = pd.DataFrame(data)


    # Print the table

    print(tabulate(df, headers='keys', tablefmt='fancy_grid', showindex=False))


    # Export to Excel file

    excel_file_path = 'sales_order_lines_with_details.xlsx'

    df.to_excel(excel_file_path, index=False)

    print(f"Sales order lines with details exported to {excel_file_path}")


except xmlrpc.client.Fault as e:

    print(f"Error executing Odoo API method: {e}")

finally:

    print("Script execution completed.")

0
Avatar
Discard
Avatar
Cybrosys Techno Solutions Pvt.Ltd
Best Answer

Hi,
Here are some general steps you can take to troubleshoot and ensure proper configuration:

  1. Credentials Check:
    • Verify URL, database, username, and password correctness.
  2. API Access Rights:
    • Confirm the specified user has necessary API access rights.
  3. Update URL Handling:
    • Construct and pass the full API endpoint URL to ServerProxy.
  4. SSL Handling:
    • Handle SSL correctly, consider additional parameters for HTTPS.
  5. Print Responses:
    • Print responses, especially from common.authenticate, for error messages.
  6. Firewall and Security:
    • Ensure no restrictions in firewall or security groups.
  7. Version Compatibility:
    • Confirm script compatibility with the Odoo version on the cloud.
  8. Exception Handling:
    • Catch relevant exceptions for detailed error messages.
  9. Check Odoo Logs:
    • Inspect Odoo logs for API call-related errors or warnings

You can also refer to How to Handle External APIs in Odoo 16


Hope it helps

0
Avatar
Discard
Avatar
akram.mokhtar@raiftextile.com
Author Best Answer

when i triger this 

  common = xmlrpc.client.ServerProxy('{}/xmlrpc/2/common'.format(url))common.version()print(common.version())

it give me :
{'server_version': '16.0+e', 'server_version_info': [16, 0, 0, 'final', 0, 'e'], 'server_serie': '16.0', 'protocol_version': 1}
but when i trigger the other script ,it give me only

0
Avatar
Discard
akram.mokhtar@raiftextile.com
Author

<Fault 3: 'Access Denied'>

akram.mokhtar@raiftextile.com
Author

this script too in the video :
import xmlrpc.client

url = 'myurl_cloud_odoo'

db = 'db-test-10928066'

username = 'myuser'
password = 'myapi'

common = xmlrpc.client.ServerProxy('{}/xmlrpc/2/common'.format(url))

uid = common.authenticate(db, username, password, {})

if uid:
print("authentication success")
else:
print("authentication failed")

it give me authentication failed
so what is the permission needed to accept the api external on cloud
when i tried it on onprem it works perfect

Avatar
Niyas Raphy (Walnut Software Solutions)
Best Answer

Hi,

When the script is triggered against the cloud server, did you receive any error ? Did you get chance to cross how far the code execution goes.

It will be better, if you update the post along with error details that you receive.

For more about odoo external api, see: external api in odoo

Thanks

0
Avatar
Discard
Enjoying the discussion? Don't just read, join in!

Create an account today to enjoy exclusive features and engage with our awesome community!

Sign up
Related Posts Replies Views Activity
Api External - can i use it on Test Enviroment as "This database is neutralized. "
api odoo16features
Avatar
0
मार्च 24
2053
Problem insert data into relational table with api
api odoo16features
Avatar
Avatar
1
मई 23
3143
[16.0] call button_validate() method error on Odoo 16
api route odoo16features
Avatar
Avatar
1
फ़र॰ 24
2880
ODOO 16 - download report from external API
api report odoo16features
Avatar
0
जन॰ 24
2161
Odoo Api Login
api XML-RPC odoo16features
Avatar
0
अग॰ 24
2441
कम्यूनिटी
  • ट्यूटोरियल्स
  • दस्तावेज़
  • फ़ोरम
ओपन सोर्स
  • डाउनलोड
  • Github
  • रनबॉट
  • अनुवाद
सेवाएं
  • Odoo.sh Hosting
  • सहायता
  • अपग्रेड
  • कस्टम डेवलपमेंट्स
  • शिक्षा
  • अकाउंटेंट खोजें
  • पार्टनर ढूंढें
  • पार्टनर बनें
हमारे बारे में
  • हमारी कंपनी
  • ब्रांड ऐसेट
  • संपर्क करें
  • नौकरियां
  • इवेंट
  • पॉडकास्ट
  • ब्लॉग
  • ग्राहक
  • लीगल • गोपनीयता
  • सुरक्षा
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk slovenščina Español (América Latina) Español ภาษาไทย Türkçe українська Tiếng Việt

Odoo, बिज़नेस से जुड़े ऐप्लिकेशन का एक कलेक्शन है जो ओपन सोर्स पर आधारित है. इसमें आपकी कंपनी की हर ज़रूरत के लिए ऐप्लिकेशन हैं. जैसे, सीआरएम, ई-कॉमर्स, अकाउंटिंग, इन्वेंट्री, पॉइंट ऑफ़ सेल, प्रोजेक्ट मैनेजमेंट वगैरह.

Odoo की सबसे बड़ी खासियत है कि यह इस्तेमाल करने में बहुत आसान है और यह पूरी तरह से इंटिग्रेट किया हुआ है.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now