REST API/OpenAPI/Swagger

by ,
Odoo          
v 13.0 Third Party 2

180.00 €

You bought this module and need support ? Click here !
Technical name openapi
LicenseLGPL-3
Websitehttps://apps.odoo.com/apps/modules/13.0/openapi/
Read description for v 12.0 v 11.0 v 10.0
Technical name openapi
LicenseLGPL-3
Websitehttps://apps.odoo.com/apps/modules/13.0/openapi/
Read description for v 12.0 v 11.0 v 10.0

REST API/OpenAPI/Swagger

Secure tool for convenient integrations

Key features:
  • Full control over granted access via API
  • Requests/Responses made over API are logged with required level of details: full/short/disabled
  • API specification which is supported by dozens tools, platforms and services

Easy to use in any programming languages

# https://github.com/Yelp/bravado
from bravado.requests_client import RequestsClient
from bravado.client import SwaggerClient

http_client = RequestsClient()
http_client.set_basic_auth('yourdomain.example.com', 'DATABASE-NAME', 'USER-TOKEN')
odoo = SwaggerClient.from_url(
    'https://yourdomain.example.com/api/v1/demo/swagger.json?token=demo_token&db=source',
    http_client=http_client
)

result = odoo.res_partner.callMethodForResPartnerModel(
    method_name="search",
    body={
        'args': [[('email', '=', 'sync@it-projects.info')]]
    }
).response().incoming_response.json()

partner_id = result and result[0]

if not partner_id:
    result = odoo.res_partner.addResPartner(body={
        "name": "OpenAPI Support",
        "email": "sync@it-projects.info"
    }).response().result
    partner_id = result.id

odoo.res_partner.callMethodForResPartnerSingleRecord(
  id=partner_id,
  method_name="message_post",
  body={
    "kwargs": {
      "body": "The Openapi module works in Python! Thank you!",
      "partner_ids": [partner_id]
    }
  }
).response()
Comming soon...
Comming soon...
Comming soon...
Comming soon...
Comming soon...

Choose a platform that fit your needs

AWS Lambda is a serverless autoscalable platform to execute your code. For a simple integration as well as cases when you want to use any of AWS Services it's the best option. No extra module is needed! Check out detailed instruction:

Syndesis is an integration platform. Syndesis allows to make data mapping from/to Odoo without any programming. No extra module is needed! Check out detailed intruction:

Dataiku is platform to analyze data. No extra module is needed! Check out detailed instruction:

Power BI is a service to visualize and analyzing data. No extra module is needed! Check out detailed intruction:

Need more? Anything with REST API support can be connected to Odoo just with this module!

As a buyer, you are granted to use the module in as many Odoo instances as you need!
Are you not very much aware of API stuff?
You may send this page to your IT guys to evaluate the possibilities or tell us your concerns
Tested on Odoo
12.0 community
Tested on Odoo
12.0 enterprise

REST API/Openapi/Swagger

Installation

  • Install this module in a usual way

  • Add openapi to --load parameter, e.g.:

    ./odoo-bin --workers=2 --load openapi,web --config=/path/to/odoo.conf
    

Configuration

Activating and customization

  • Open menu [[ OpenAPI ]] >> OpenAPI >> Integrations

  • Click [Create]

  • Specify Name for integration, e.g. test

  • Set Log requests to Full

  • Set Log responses to Full

  • In Accessable models tab click Add an item

    • Set Model, for example res.users

    • Configure allowed operations

      • [x] Create via API

        • Set Creation Context Presets, for example
          • Name: brussels
          • Context: {'default_tz':'Europe/Brussels', 'default_lang':'fr_BE'}
      • [x] Read via API

        • Set Read One Fields -- fields to return on reading one record

        • Set Read Many Fields -- fields to return on reading multiple records

          Note: you can use Export widget in corresponding Model to create Fields list. To do that:

          • Open menu for the Model
          • Switch to list view
          • Select any record
          • click [Action] -> Export
          • Set Export Type to Export all Data
          • Add the fields you need to right column
          • Click Save fields list, choose name and save the list
          • Now the list is availab to set Read One Fields, Read Many Fields settings
      • [x] Update via API

      • [x] Delete via API

  • Click [Save]

  • Copy Specification Link to use it in any system that support OpenAPI

Authentication

  • Activate Developer Mode
  • Open menu [[ Settings ]] >> Users >> Users
  • Select a user that will be used for iteracting over API
  • In Allowed Integration select some integrations
  • Copy OpenAPI Token to use it in any system that support OpenAPI

Usage

As the simplest example, you can try API in Swagger Editor. It allows to review and check API

  • Open http://editor.swagger.io/
  • Click menu File >> Import File
  • Set Specification link
  • RESULT: Specification is parsed succefully and you can see API presentation
  • Click [Authorize] button
    • Username -- set database name
    • Password -- set OpenAPI Token

For more examples visit https://odoo-sync.sh website

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author or have a question related to your purchase, please use the support page.