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.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/samsung-rules-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
openapi: 3.2.0
info:
title: Samsung SmartThings Apps Rules API
description: 'The SmartThings REST API provides programmatic access to the SmartThings platform for controlling connected devices, creating automations, managing locations, rooms, scenes, and building smart home integrations. Supports OAuth 2.0 Bearer tokens and personal access tokens. Base URL: https://api.smartthings.com/v1.'
version: 1.0.0
contact:
name: SmartThings Developer Support
url: https://developer.smartthings.com/
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0
servers:
- url: https://api.smartthings.com/v1
description: SmartThings REST API
security:
- BearerAuth: []
tags:
- name: Rules
description: Automation rule management.
paths:
/rules:
get:
operationId: listRules
summary: List Rules
description: Returns all automation rules for the authenticated user.
tags:
- Rules
parameters:
- name: locationId
in: query
required: false
description: Filter rules by location ID.
schema:
type: string
format: uuid
- name: max
in: query
required: false
description: Maximum number of rules to return.
schema:
type: integer
- name: offset
in: query
required: false
description: Pagination offset.
schema:
type: integer
responses:
'200':
description: List of rules.
content:
application/json:
schema:
type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/Rule'
_links:
$ref: '#/components/schemas/Links'
'401':
description: Unauthorized.
post:
operationId: createRule
summary: Create Rule
description: Creates a new SmartThings automation rule with trigger conditions and actions.
tags:
- Rules
parameters:
- name: locationId
in: query
required: true
description: Location ID where the rule will be created.
schema:
type: string
format: uuid
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateRuleRequest'
responses:
'200':
description: Rule created.
content:
application/json:
schema:
$ref: '#/components/schemas/Rule'
'401':
description: Unauthorized.
'422':
description: Validation error.
/rules/{ruleId}:
get:
operationId: getRule
summary: Get Rule
description: Returns details for a specific automation rule.
tags:
- Rules
parameters:
- $ref: '#/components/parameters/RuleIdParam'
- name: locationId
in: query
required: true
description: Location ID of the rule.
schema:
type: string
format: uuid
responses:
'200':
description: Rule details.
content:
application/json:
schema:
$ref: '#/components/schemas/Rule'
'401':
description: Unauthorized.
'404':
description: Rule not found.
put:
operationId: updateRule
summary: Update Rule
description: Updates an existing SmartThings automation rule.
tags:
- Rules
parameters:
- $ref: '#/components/parameters/RuleIdParam'
- name: locationId
in: query
required: true
description: Location ID of the rule.
schema:
type: string
format: uuid
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateRuleRequest'
responses:
'200':
description: Rule updated.
content:
application/json:
schema:
$ref: '#/components/schemas/Rule'
'401':
description: Unauthorized.
'404':
description: Rule not found.
delete:
operationId: deleteRule
summary: Delete Rule
description: Deletes a SmartThings automation rule.
tags:
- Rules
parameters:
- $ref: '#/components/parameters/RuleIdParam'
- name: locationId
in: query
required: true
description: Location ID of the rule.
schema:
type: string
format: uuid
responses:
'200':
description: Rule deleted.
'401':
description: Unauthorized.
'404':
description: Rule not found.
components:
parameters:
RuleIdParam:
name: ruleId
in: path
required: true
description: Unique rule identifier.
schema:
type: string
schemas:
Links:
type: object
description: Pagination links.
properties:
next:
type: object
properties:
href:
type: string
description: URL to the next page.
previous:
type: object
properties:
href:
type: string
description: URL to the previous page.
Rule:
type: object
description: A SmartThings automation rule.
properties:
id:
type: string
description: Unique rule identifier.
name:
type: string
description: Rule name.
actions:
type: array
description: Actions to execute when rule conditions are met.
items: {}
timeZoneId:
type: string
description: IANA time zone for time-based conditions.
executionLocation:
type: string
description: Where the rule executes.
enum:
- Cloud
- Local
ownerId:
type: string
description: Owner user ID.
CreateRuleRequest:
type: object
required:
- name
- actions
properties:
name:
type: string
description: Rule name.
actions:
type: array
description: Rule action definitions.
items: {}
timeZoneId:
type: string
description: IANA time zone for time-based conditions.
securitySchemes:
BearerAuth:
type: http
scheme: bearer
description: OAuth 2.0 Bearer token or SmartThings personal access token. Obtain tokens at https://account.smartthings.com/tokens.