Styra Enterprise OPA REST API API

The Enterprise OPA REST API API from Styra — 1 operation(s) for enterprise opa rest api.

Operations 1

POST / Execute the default decision given an input #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/styra-enterprise-opa-rest-api-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

styra-enterprise-opa-rest-api-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Enterprise OPA REST Batch Enterprise OPA REST API
  version: 0.2.0
  contact:
    name: Styra
    url: https://github.com/StyraInc/enterprise-opa
servers:
- url: http://localhost:8181
  description: Local development server
security:
- {}
- bearerAuth: []
tags:
- name: Enterprise OPA REST API
paths:
  /:
    post:
      parameters:
      - $ref: '#/components/parameters/pretty'
      - $ref: '#/components/parameters/GzipAcceptEncoding'
      summary: Execute the default decision  given an input
      operationId: executeDefaultPolicyWithInput
      x-speakeasy-usage-example: true
      requestBody:
        description: The input document
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/input'
      responses:
        '200':
          $ref: '#/components/responses/SuccessfulDefaultPolicyEvaluation'
        '400':
          $ref: '#/components/responses/BadRequest'
        '404':
          $ref: '#/components/responses/PolicyNotFound'
        '500':
          $ref: '#/components/responses/ServerError'
      tags:
      - Enterprise OPA REST API
components:
  schemas:
    ServerError:
      type: object
      required:
      - code
      - message
      properties:
        code:
          type: string
        message:
          type: string
        errors:
          type: array
          items:
            type: object
            required:
            - code
            - message
            properties:
              code:
                type: string
              message:
                type: string
              location:
                type: object
                required:
                - file
                - row
                - col
                properties:
                  file:
                    type: string
                  row:
                    type: integer
                  col:
                    type: integer
        decision_id:
          type: string
          example: b84cf736-213c-4932-a8e4-bb5c648f1b4d
    input:
      description: Arbitrary JSON used within your policies by accessing `input`
      oneOf:
      - type: boolean
      - type: string
      - type: number
      - type: array
        items: {}
      - type: object
        additionalProperties: true
        example:
          user: alice
          action: read
          object: id123
          type: dog
    ClientError:
      type: object
      required:
      - code
      - message
      properties:
        code:
          type: string
        message:
          type: string
        errors:
          type: array
          items:
            type: object
            required:
            - code
            - message
            properties:
              code:
                type: string
              message:
                type: string
              location:
                type: object
                required:
                - file
                - row
                - col
                properties:
                  file:
                    type: string
                  row:
                    type: integer
                  col:
                    type: integer
    result:
      description: The base or virtual document referred to by the URL path. If the path is undefined, this key will be omitted.
      oneOf:
      - type: boolean
      - type: string
      - type: number
      - type: array
        items: {}
      - type: object
        additionalProperties: true
        example:
          allow: true
          user_is_admin: true
          user_is_granted: []
  responses:
    PolicyNotFound:
      description: The policy at the specified location is undefined.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ClientError'
    BadRequest:
      description: Bad Request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ClientError'
    SuccessfulDefaultPolicyEvaluation:
      description: 'Success.

        Evaluating the default policy has the same response behavior as a successful policy evaluation, but with only the result as the response.

        '
      headers:
        Content-Encoding:
          $ref: '#/components/headers/GzipContentEncoding'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/result'
    ServerError:
      description: Server Error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ServerError'
  parameters:
    GzipAcceptEncoding:
      name: Accept-Encoding
      description: Indicates the server should respond with a gzip encoded body. The server will send the compressed response only if its length is above `server.encoding.gzip.min_length` value. See the configuration section
      in: header
      schema:
        type: string
        enum:
        - gzip
    pretty:
      name: pretty
      description: If parameter is `true`, response will formatted for humans.
      in: query
      schema:
        type: boolean
  headers:
    GzipContentEncoding:
      description: Indicates that the response body is gzip encoded
      schema:
        type: string
        enum:
        - gzip
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
externalDocs:
  description: Enterprise OPA documentation
  url: https://docs.styra.com/enterprise-opa
  x-openpolicyagent-documentation-url: https://www.openpolicyagent.org/docs/latest/