WSO2 Artifact Compliance API

for accessing artifact compliance.

Operations 4

GET /artifact-compliance/api Retrieves compliance of all API artifacts #
GET /artifact-compliance/api/summary Retrieves the summary of compliance of all API artifacts #
GET /artifact-compliance/api/{apiId} Retrieve compliance details for a specific API #
GET /artifact-compliance/api/{apiId}/ruleset-validation-results/{rulesetId} Retrieve ruleset validation results for a specific API #

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/wso2-artifact-compliance-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

wso2-artifact-compliance-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: v1.1
  title: WSO2 API Manager - Governance Artifact Compliance API
  description: This document specifies a **RESTful API** for WSO2 **API Manager** - Governance.
  contact:
    name: WSO2
    url: http://wso2.com/products/api-manager/
    email: architecture@wso2.com
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
servers:
- url: https://apis.wso2.com/api/am/governance/v1
tags:
- name: Artifact Compliance
  description: for accessing artifact compliance.
paths:
  /artifact-compliance/api:
    get:
      summary: Retrieves compliance of all API artifacts
      description: Retrieves compliance of all API artifacts within the organization visible to logged-in user.
      operationId: getComplianceStatusListOfAPIs
      parameters:
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/offset'
      tags:
      - Artifact Compliance
      responses:
        '200':
          description: OK. Successful response with API compliance results.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArtifactComplianceList'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
      - OAuth2Security:
        - apim:gov_result_read
  /artifact-compliance/api/summary:
    get:
      summary: Retrieves the summary of compliance of all API artifacts
      description: Retrieves the summary of compliance of all API artifacts within the organization visible to logged-in user.
      operationId: getComplianceSummaryForAPIs
      tags:
      - Artifact Compliance
      responses:
        '200':
          description: OK. Successful response with compliance summary.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArtifactComplianceSummary'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
      - OAuth2Security:
        - apim:gov_result_read
  /artifact-compliance/api/{apiId}:
    get:
      summary: Retrieve compliance details for a specific API
      description: Retrieve compliance details associated with a specific API using its unique UUID.
      operationId: getComplianceByAPIId
      tags:
      - Artifact Compliance
      parameters:
      - $ref: '#/components/parameters/apiId'
      responses:
        '200':
          description: Successful response with compliance details for the specified artifact.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArtifactComplianceDetails'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
      - OAuth2Security:
        - apim:gov_result_read
  /artifact-compliance/api/{apiId}/ruleset-validation-results/{rulesetId}:
    get:
      summary: Retrieve ruleset validation results for a specific API
      description: Retrieve ruleset validation results associated with a specific API using its unique UUID.
      operationId: getRulesetValidationResultsByAPIId
      tags:
      - Artifact Compliance
      parameters:
      - $ref: '#/components/parameters/apiId'
      - $ref: '#/components/parameters/rulesetId'
      responses:
        '200':
          description: Successful response with ruleset validation results for the specified API.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RulesetValidationResult'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
      - OAuth2Security:
        - apim:gov_result_read
components:
  schemas:
    Pagination:
      title: Pagination
      type: object
      properties:
        offset:
          type: integer
          example: 0
        limit:
          type: integer
          example: 1
        total:
          type: integer
          example: 10
        next:
          type: string
          description: 'Link to the next subset of resources qualified.

            Empty if no more resources are to be returned.

            '
        previous:
          type: string
          description: 'Link to the previous subset of resources qualified.

            Empty if current subset is the first subset returned.

            '
    ArtifactComplianceList:
      type: object
      description: Compliance status of a list of artifacts.
      properties:
        count:
          type: integer
          description: Number of artifact returned.
          example: 10
        list:
          type: array
          items:
            $ref: '#/components/schemas/ArtifactComplianceStatus'
        pagination:
          $ref: '#/components/schemas/Pagination'
    RulesetValidationResultWithoutRules:
      type: object
      description: Result of the ruleset validation.
      properties:
        id:
          type: string
          description: UUID of the ruleset.
          example: 123e4567-e89b-12d3-a456-426614174000
        name:
          type: string
          description: Name of the ruleset.
          example: API Security Ruleset
        ruleType:
          type: string
          description: Context or area to which the ruleset applies.
          enum:
          - API_METADATA
          - API_DEFINITION
          - API_DOCUMENTATION
          example: API_DEFINITION
          x-enum-varnames:
          - API_METADATA
          - API_DEFINITION
          - API_DOCUMENTATION
        status:
          type: string
          description: Status of the ruleset validation.
          enum:
          - PASSED
          - FAILED
          - UNAPPLIED
          example: PASSED
    SeverityBasedRuleViolationCount:
      type: object
      description: List of rules violated by the artifact under each severity.
      properties:
        severity:
          type: string
          description: Severity level of the rule violation.
          enum:
          - ERROR
          - WARN
          - INFO
          example: WARN
        violatedRulesCount:
          type: integer
          description: Number of rules violated by the artifact under each severity.
          example: 1
    Error:
      title: Error object returned with 4XX HTTP Status
      required:
      - code
      - message
      properties:
        code:
          type: integer
          format: int64
        message:
          type: string
          description: Error message.
        description:
          type: string
          description: 'A detail description about the error message.

            '
    ArtifactComplianceSummary:
      type: object
      description: Summary of compliance of certain artifact in the organization.
      properties:
        total:
          type: integer
          description: Total number of artifacts.
          example: 10
        compliant:
          type: integer
          description: Number of compliant artifacts.
          example: 6
        nonCompliant:
          type: integer
          description: Number of non-compliant artifacts.
          example: 4
        pending:
          type: integer
          description: Number of artifacts pending for compliance.
          example: 0
        notApplicable:
          type: integer
          description: Number of artifacts not applicable for compliance yet.
          example: 0
    ArtifactComplianceStatus:
      type: object
      description: Provides compliance status of an artifact.
      properties:
        id:
          type: string
          description: UUID of the API.
          example: 123e4567-e89b-12d3-a456-426614174000
        status:
          type: string
          description: Status of the API's governance compliance.
          enum:
          - COMPLIANT
          - NON-COMPLIANT
          - NOT-APPLICABLE
          - PENDING
          example: COMPLIANT
        info:
          $ref: '#/components/schemas/ArtifactInfo'
        policyAdherenceSummary:
          $ref: '#/components/schemas/PolicyAdherenceSummary'
        severityBasedRuleViolationSummary:
          type: array
          description: Summary of severity based rule violations.
          items:
            $ref: '#/components/schemas/SeverityBasedRuleViolationCount'
    RulesetValidationResult:
      type: object
      description: Result of the ruleset validation.
      properties:
        id:
          type: string
          description: UUID of the ruleset.
          example: 123e4567-e89b-12d3-a456-426614174000
        name:
          type: string
          description: Name of the ruleset.
          example: API Security Ruleset
        status:
          type: string
          description: Status of the ruleset validation.
          enum:
          - PASSED
          - FAILED
          - UNAPPLIED
          example: PASSED
        violatedRules:
          type: array
          description: List of violated rules.
          items:
            $ref: '#/components/schemas/RuleValidationResult'
        followedRules:
          type: array
          description: List of followed rules.
          items:
            $ref: '#/components/schemas/RuleValidationResult'
    ArtifactInfo:
      type: object
      description: Detailed information about an artifact.
      properties:
        name:
          type: string
          description: Name of the artifact.
          example: Test API
        type:
          type: string
          description: Type of the artifact.
          enum:
          - API
          example: API
        extendedType:
          type: string
          description: Extended type of the artifact.
          enum:
          - REST_API
          - ASYNC_API
          - MCP
          example: REST_API
        version:
          type: string
          description: Version of the artifact.
          example: 1.0.0
        owner:
          type: string
          description: Owner of the artifact.
          example: admin
    RuleValidationResult:
      type: object
      description: Result of the rule validation.
      properties:
        id:
          type: string
          description: UUID of the rule.
          example: 123e4567-e89b-12d3-a456-426614174000
        name:
          type: string
          description: Name of the rule.
          example: API Name Rule
        status:
          type: string
          description: Status of the rule validation.
          enum:
          - PASSED
          - FAILED
          example: FAILED
        severity:
          type: string
          description: Severity level of the rule violation.
          enum:
          - ERROR
          - WARN
          - INFO
          example: WARN
        violatedPath:
          type: object
          description: Path in the artifact where the rule is violated.
          properties:
            path:
              type: string
              description: Path in the artifact where the rule is violated.
              example: info.title
            description:
              type: string
              description: Description of the path.
              example: API name
        message:
          type: string
          description: Message to be displayed when the rule is violated.
          example: API name can not be too long or short
        description:
          type: string
          description: Description of the rule.
          example: API name should be between 5 to 50 characters
    ArtifactComplianceDetails:
      type: object
      description: Provides compliance details of an artifact.
      properties:
        id:
          type: string
          description: UUID of the artifact.
          example: 123e4567-e89b-12d3-a456-426614174000
        status:
          type: string
          description: Status of the artifact's governance compliance.
          enum:
          - COMPLIANT
          - NON-COMPLIANT
          - NOT-APPLICABLE
          - PENDING
          example: COMPLIANT
        info:
          $ref: '#/components/schemas/ArtifactInfo'
        governedPolicies:
          type: array
          description: List of policies under which the artifact was governed.
          items:
            $ref: '#/components/schemas/PolicyAdherenceWithRulesets'
    PolicyAdherenceSummary:
      type: object
      description: Summary of governance policy adherence in the organization.
      properties:
        total:
          type: integer
          description: Total number of policies.
          example: 10
        followed:
          type: integer
          description: Number of policies followed to.
          example: 6
        violated:
          type: integer
          description: Number of policies violated.
          example: 4
        unApplied:
          type: integer
          description: Number of policies unApplied.
          example: 0
    PolicyAdherenceWithRulesets:
      type: object
      description: Adherence status of a policy with ruleset details.
      properties:
        id:
          type: string
          description: UUID of the policy.
          example: 123e4567-e89b-12d3-a456-426614174000
        name:
          type: string
          description: Name of the policy.
          example: Policy1
        status:
          type: string
          description: Status of the policy's governance compliance.
          enum:
          - FOLLOWED
          - VIOLATED
          - UNAPPLIED
          - PENDING
          example: FOLLOWED
        rulesetValidationResults:
          type: array
          description: List of ruleset validation information.
          items:
            $ref: '#/components/schemas/RulesetValidationResultWithoutRules'
  parameters:
    limit:
      name: limit
      in: query
      description: 'Maximum size of resource array to return.

        '
      schema:
        type: integer
        default: 25
    rulesetId:
      name: rulesetId
      in: path
      description: '**UUID** of the Ruleset.

        '
      required: true
      schema:
        type: string
    apiId:
      name: apiId
      in: path
      description: '**UUID** of the API.

        '
      required: true
      schema:
        type: string
    offset:
      name: offset
      in: query
      description: 'Starting point within the complete list of items qualified.

        '
      schema:
        type: integer
        default: 0
  securitySchemes:
    OAuth2Security:
      type: oauth2
      flows:
        password:
          tokenUrl: https://localhost:9443/oauth2/token
          scopes:
            openid: Authorize access to user details
            apim:gov_rule_read: Read governance rulesets
            apim:gov_rule_manage: Manage governance rulesets
            apim:gov_policy_read: Read governance policies
            apim:gov_policy_manage: Manage governance policies
            apim:gov_result_read: Read governance results