CoreStack Lock Configuration API

Manage Locks

Operations 8

POST /v2/lock_configurations/batch Batch Lock Configurations #
POST /v2/lock_configurations/create Create a new Lock Configuration #
DELETE /v2/lock_configurations/item/{lock_configuration_id} Delete Lock Configuration #
GET /v2/lock_configurations/item/{lock_configuration_id} Get Lock Configuration #
PUT /v2/lock_configurations/item/{lock_configuration_id} Update Lock Configuration #
POST /v2/lock_configurations/list List Lock Configurations #
POST /v2/lock_configurations/resources List Account Resources for Lock Configuration #
POST /v2/lock_configurations/tags List Account Tags for Lock Configuration #

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/corestack:corestack-lock-configuration-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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

corestack-lock-configuration-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: CoreStack External Lock Configuration API
  version: 1.0.0
  termsOfService: http://corestack.io/
  license:
    name: CoreStack Inc License
    url: http://corestack.io/licenses/LICENSE-2.0.html
  description: Manage Locks
servers:
- url: /
tags:
- name: Lock Configuration
  description: Manage Locks
paths:
  /v2/lock_configurations/batch:
    post:
      responses:
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '200':
          description: Fetched
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LockConfigBatchResponse'
      summary: Batch Lock Configurations
      description: Retrieve the Lock configuration for the specified ids
      operationId: BatchLockConfigurations
      security:
      - auth_token: []
      tags:
      - Lock Configuration
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ObjectIdBatchRequest'
        required: true
  /v2/lock_configurations/create:
    post:
      responses:
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '201':
          description: Created
          content:
            application/json:
              schema:
                type: string
                x-cs-type: ObjectId
      summary: Create a new Lock Configuration
      description: Creates a new Lock Configuration
      operationId: CreateLockConfiguration
      security:
      - auth_token: []
      tags:
      - Lock Configuration
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LockConfigDetails'
        required: true
  /v2/lock_configurations/item/{lock_configuration_id}:
    delete:
      responses:
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '200':
          description: Deleted
          content:
            application/json:
              schema:
                type: boolean
      summary: Delete Lock Configuration
      description: Delete the lock configuration
      operationId: DeleteLockConfiguration
      parameters:
      - name: lock_configuration_id
        in: path
        required: true
        description: Specify the lock configuration  ID to delete, ID which can be obtained from the list lock configuration API.
        schema:
          type: string
      security:
      - auth_token: []
      tags:
      - Lock Configuration
    get:
      responses:
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '200':
          description: Fetched
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LockConfigDetails'
      summary: Get Lock Configuration
      description: Retrieve the current details of the lock
      operationId: GetLockConfiguration
      parameters:
      - name: lock_configuration_id
        in: path
        required: true
        description: Specify lock ID to read, ID which can be obtained from the list lock configuration API.
        schema:
          type: string
      security:
      - auth_token: []
      tags:
      - Lock Configuration
    put:
      responses:
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '412':
          description: Validation Failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationResults'
        '200':
          description: Fetched
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LockConfigDetails'
      summary: Update Lock Configuration
      description: Update the details of the lock configuration
      operationId: UpdateLockConfiguration
      parameters:
      - name: lock_configuration_id
        in: path
        required: true
        description: Specify the lock ID to update, ID which can be obtained from the list lock configuration API.
        schema:
          type: string
      security:
      - auth_token: []
      tags:
      - Lock Configuration
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LockConfigDetails'
        required: true
  /v2/lock_configurations/list:
    post:
      responses:
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '200':
          description: Fetched
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LockConfigListResponse'
      summary: List Lock Configurations
      description: Retrieve the ids of locks matching the filtering criteria
      operationId: ListLockConfiguration
      security:
      - auth_token: []
      tags:
      - Lock Configuration
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LockConfigListRequest'
        required: true
  /v2/lock_configurations/resources:
    post:
      responses:
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
      summary: List Account Resources for Lock Configuration
      description: Retrieve the lock-allowed resources for a service account
      operationId: ListLockConfigurationResources
      security:
      - auth_token: []
      tags:
      - Lock Configuration
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LockConfigResourcesRequest'
        required: true
  /v2/lock_configurations/tags:
    post:
      responses:
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelError'
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
      summary: List Account Tags for Lock Configuration
      description: Retrieve the tag keys available for a service account
      operationId: ListLockConfigurationTags
      security:
      - auth_token: []
      tags:
      - Lock Configuration
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LockConfigTagsRequest'
        required: true
components:
  schemas:
    LockConfigListRequest:
      properties:
        list_context:
          description: Optional list context
          $ref: '#/components/schemas/ListContext'
        sort:
          type: array
          description: Sort criteria
          items:
            $ref: '#/components/schemas/LockConfigDetailsSortCriteria'
        filters:
          description: Filters for the request
          $ref: '#/components/schemas/LockConfigFilter'
      type: object
    ObjectIdBatchRequest:
      properties:
        ids:
          type: array
          items:
            type: string
            x-cs-type: ObjectId
      type: object
    LockConfigResourcesRequest:
      required:
      - service_account_id
      properties:
        service_account_id:
          type: string
          description: Service Account ID
          x-cs-type: ObjectId
      type: object
    LockConfigDetails:
      required:
      - lock_scope
      - lock_type
      - scope_details
      - status
      properties:
        id:
          type: string
          description: Id of the Lock Configuration
          x-cs-type: ObjectId
        lock_scope:
          type: string
          description: Scope of Lock
          example: service_account
          enum:
          - service_account
          - tenant
          x-cs-enum-type: LockScope
        scope_details:
          description: Lock Config Scope Details
          $ref: '#/components/schemas/LockConfigScopeDetailsBase'
        service_name:
          type: string
          description: Cloud Provider to select
          example: AWS
          enum:
          - AWS
          - Azure
          - AzureStack
          - Azure_CSP
          - Azure_CSP-Direct
          - Azure_EA
          - Azure_MCA
          - Cloudstack
          - GCP
          - MS_VMM
          - OCI
          - Openstack
          - PrivateCloud
          - Rackspace
          - VMware
          - VMware_VCD
          - vCenter
          x-cs-enum-type: CloudServiceName
        lock_type:
          type: string
          description: Type of Lock
          example: ReadOnly
          enum:
          - ReadOnly
          - CanNotDelete
          x-cs-enum-type: LockType
        status:
          type: string
          description: Status of Lock
          example: active
          enum:
          - active
          - inactive
          x-cs-enum-type: LockStatus
        tenant_ids:
          type: array
          description: IDS of the tenants
          items:
            type: string
            x-cs-type: ObjectId
        created_at:
          type: string
          format: date-time
          description: Created at
        updated_at:
          type: string
          format: date-time
          description: Updated at
        created_by:
          type: string
          description: Created by
        updated_by:
          type: string
          description: Updated by
      type: object
    LockConfigListResponse:
      properties:
        results:
          type: array
          description: List of result identifiers
          items:
            type: string
            x-cs-type: ObjectId
        next_list_context:
          description: List context
          $ref: '#/components/schemas/ListContext'
      type: object
    LockConfigScopeDetailsBase:
      required:
      - type
      properties: {}
      discriminator:
        propertyName: type
      type: object
      x-cs-subtypes:
      - subtype_model: LockConfigScopeDetailsForTenant
        subtype_name: LockConfigScopeDetailsForTenant
      - subtype_model: LockConfigScopeDetailsBaseForServiceAccount
        subtype_name: LockConfigDetailsBaseForServiceAccount
      - subtype_model: LockConfigScopeDetailsForAwsServiceAccount
        subtype_name: LockConfigScopeDetailsForAwsServiceAccount
      - subtype_model: LockConfigScopeDetailsForAzureServiceAccount
        subtype_name: LockConfigScopeDetailsForAzureServiceAccount
      - subtype_model: LockConfigScopeDetailsForGcpServiceAccount
        subtype_name: LockConfigScopeDetailsForGcpServiceAccount
    ValidationResult:
      properties:
        field:
          type: string
        reason:
          type: string
      type: object
    LockConfigDetailsSortCriteria:
      required:
      - column
      properties:
        column:
          type: string
          example: CreatedAt
          enum:
          - CreatedAt
          - LastSyncAt
          x-cs-enum-type: LockConfigDetailsSortColumn
        ascending:
          type: boolean
      type: object
    LockConfigBatchResponse:
      properties:
        results:
          type: object
          description: Map from identifier to response model
          additionalProperties:
            $ref: '#/components/schemas/LockConfigDetails'
      type: object
    ModelError:
      required:
      - message
      properties:
        message:
          type: string
          description: Error response message.
      type: object
    ValidationResults:
      properties:
        entries:
          type: array
          items:
            $ref: '#/components/schemas/ValidationResult'
      type: object
    ListContext:
      properties:
        batch_size:
          type: integer
          description: Max number of ids in the response
        batch_offset:
          type: integer
          description: Offset of batches into the results. First batch is 0
        total:
          type: integer
          description: Total number of results
      type: object
    LockConfigTagsRequest:
      required:
      - service_account_id
      properties:
        service_account_id:
          type: string
          description: Service Account ID
          x-cs-type: ObjectId
      type: object
    LockConfigFilter:
      required:
      - lock_scope
      properties:
        lock_scope:
          type: string
          description: Scope of Lock
          example: service_account
          enum:
          - service_account
          - tenant
          x-cs-enum-type: LockScope
        lock_types:
          type: array
          items:
            type: string
            description: Type of Lock
            example: ReadOnly
            enum:
            - ReadOnly
            - CanNotDelete
            x-cs-enum-type: LockType
        service_names:
          type: array
          items:
            type: string
            description: Cloud Provider to select
            example: AWS
            enum:
            - AWS
            - Azure
            - AzureStack
            - Azure_CSP
            - Azure_CSP-Direct
            - Azure_EA
            - Azure_MCA
            - Cloudstack
            - GCP
            - MS_VMM
            - OCI
            - Openstack
            - PrivateCloud
            - Rackspace
            - VMware
            - VMware_VCD
            - vCenter
            x-cs-enum-type: CloudServiceName
        statuses:
          type: array
          items:
            type: string
            description: Status of Lock
            example: active
            enum:
            - active
            - inactive
            x-cs-enum-type: LockStatus
        search:
          type: string
          description: Search string
      type: object
  securitySchemes:
    auth_token:
      type: apiKey
      in: header
      name: X-Auth-Token