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/skrime:skrime-asn-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
openapi: 3.2.0
info:
title: SKRIME API (read only) Asn API
version: ee58e62caf7f
description: Reading endpoints of the SKRIME API without secrets. Descriptions in German, structure in English.
termsOfService: https://skrime.eu/tos
contact:
name: SKRIME
url: https://skrime.eu/
email: vertrieb@skrime.eu
servers:
- url: https://skrime.eu/sandbox
description: 'Sandbox: validates like the live API, answers with test data, changes nothing and costs nothing'
- url: https://skrime.eu/api
description: Live
security:
- bearerAuth: []
tags:
- name: ASN
description: ASN
paths:
/asn/pricelist:
get:
operationId: get_asn_pricelist
summary: Preisliste abrufen
tags:
- ASN
x-skrime-risk: L
parameters:
- name: voucher
in: query
required: false
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/Envelope'
examples:
example:
summary: Preisliste abrufen
value:
response: Successfully fetched pricelist
state: success
data:
- id: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
userId: ''
type: asn
state: active
productInfo:
label: ASN
features:
- Eigene AS Nummer
- RPKI Verwaltung
price: '0.00'
duration: '12'
discountOrder: '0.00'
discountOrderAmount: '0.00'
discountRenew: '0.00'
discountRenewAmount: '0.00'
discountExpire: '2024-01-01 00:00:00'
voucher: ''
voucherOrder: '0'
voucherOrderAmount: '0.00'
voucherRenew: '0'
voucherRenewAmount: '0.00'
finalOrderPrice: '0.00'
finalRenewPrice: '0.00'
createdAt: '2024-01-01 00:00:00'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'423':
$ref: '#/components/responses/Locked'
/asn/org-check:
get:
operationId: get_asn_org-check
summary: Organisation prüfen
tags:
- ASN
x-skrime-risk: L
parameters:
- name: productId
in: query
required: true
schema:
type: string
example: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
- name: org
in: query
required: true
schema:
type: string
example: ORG-DEMO-RIPE
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/Envelope'
examples:
example:
summary: Organisation prüfen
value:
response: Successfully fetched organisation check
state: success
data:
org: ORG-DEMO-RIPE
exists: true
mntSet: true
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'423':
$ref: '#/components/responses/Locked'
/asn/contact-check:
get:
operationId: get_asn_contact-check
summary: Kontakt prüfen
tags:
- ASN
x-skrime-risk: L
parameters:
- name: productId
in: query
required: true
schema:
type: string
example: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
- name: handle
in: query
required: true
schema:
type: string
example: DEMO-RIPE
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/Envelope'
examples:
example:
summary: Kontakt prüfen
value:
response: Successfully fetched contact check
state: success
data:
handle: DEMO-RIPE
type: person
exists: true
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'423':
$ref: '#/components/responses/Locked'
/asn/mnt-check:
get:
operationId: get_asn_mnt-check
summary: Maintainer prüfen
tags:
- ASN
x-skrime-risk: L
parameters:
- name: productId
in: query
required: true
schema:
type: string
example: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
- name: mnt
in: query
required: true
schema:
type: string
example: MNT-DEMO
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/Envelope'
examples:
example:
summary: Maintainer prüfen
value:
response: Successfully fetched maintainer check
state: success
data:
mnt: MNT-DEMO
exists: true
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'423':
$ref: '#/components/responses/Locked'
/asn/document:
get:
operationId: get_asn_document
summary: Dokument abrufen
tags:
- ASN
x-skrime-risk: L
description: Die Antwort ist kein JSON, der Endpunkt liefert die hinterlegte Datei zur Anzeige aus
parameters:
- name: productId
in: query
required: true
schema:
type: string
example: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
- name: fileId
in: query
required: true
schema:
type: string
example: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
responses:
'200':
description: Success, the body is a file or raw output instead of JSON
content:
application/octet-stream:
schema:
type: string
format: binary
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'423':
$ref: '#/components/responses/Locked'
/asn/single:
get:
operationId: get_asn_single
summary: ASN Anfrage abrufen
tags:
- ASN
x-skrime-risk: L
parameters:
- name: productId
in: query
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/Envelope'
examples:
example:
summary: ASN Anfrage abrufen
value:
response: Successfully fetched ASN
state: success
data:
id: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
state: setup
asn: ''
productInfo:
prefix: fe80::/48
asName: DEMO-AS
org: ORG-DEMO-RIPE
setup:
holderType: private
firstname: Max
lastname: Mustermann
company: ''
registerNumber: ''
address:
street: Musterstraße
number: 1a
postcode: '12345'
city: Musterort
country: DE
inRegion: true
regionJustification: ''
registeredFor: self
isMinor: false
asName: DEMO-AS
org: ORG-DEMO-RIPE
adminC: DEMO-RIPE
techC: DEMO-RIPE
mnt: MNT-DEMO
hasExistingAsn: false
existingAsn: ''
additionalReason: ''
peering:
- asn: AS64496
email: peering@domain.tld
- asn: AS64496
email: noc@domain.tld
documents:
id:
- id: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
name: ausweis.pdf
size: 248312
idParents: []
commercialRegister: []
tradeLicense: []
powerOfAttorney: []
parentalConsent: []
contract: []
contract:
submissionId: ''
status: none
sentAt: ''
signedAt: ''
correction:
message: ''
requestedAt: ''
verified: false
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'423':
$ref: '#/components/responses/Locked'
/asn/network:
get:
operationId: get_asn_network
summary: Netzwerk abrufen
tags:
- ASN
x-skrime-risk: L
parameters:
- name: productId
in: query
required: true
schema:
type: string
example: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/Envelope'
examples:
example:
summary: Netzwerk abrufen
value:
response: Successfully fetched network
state: success
data:
productId: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
prefix: fe80::/48
mnt: MNT-DEMO
ripe:
status: ASSIGNED
registered: true
reverse:
delegated: true
status: active
zones:
- 0.0.0.0.0.0.0.0.0.8.e.f.ip6.arpa
ourNs:
- nameserver01.eu
- nameserver02.eu
currentNs:
- nameserver01.eu
- nameserver02.eu
standardRdns: domain.tld
records:
- arpa: 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.e.f.ip6.arpa.
hostname: mail.domain.tld
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'423':
$ref: '#/components/responses/Locked'
/asn/rpki:
get:
operationId: get_asn_rpki
summary: ROAs abrufen
tags:
- ASN
x-skrime-risk: L
parameters:
- name: productId
in: query
required: true
schema:
type: string
example: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/Envelope'
examples:
example:
summary: ROAs abrufen
value:
response: Successfully fetched ROAs
state: success
data:
productId: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
prefix: fe80::/48
roas:
- asn: AS64496
prefix: fe80::/48
maximalLength: '48'
validity: published
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'423':
$ref: '#/components/responses/Locked'
/asn/loa:
get:
operationId: get_asn_loa
summary: LOA herunterladen
tags:
- ASN
x-skrime-risk: L
description: Die Antwort ist kein JSON, der Endpunkt liefert die Letter of Authorization als PDF Datei
parameters:
- name: productId
in: query
required: true
schema:
type: string
example: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
- name: asn
in: query
required: true
schema:
type: string
example: AS64496
- name: prefix
in: query
required: true
schema:
type: string
example: fe80::/48
responses:
'200':
description: Success, the body is a file or raw output instead of JSON
content:
application/octet-stream:
schema:
type: string
format: binary
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'423':
$ref: '#/components/responses/Locked'
components:
responses:
Unauthorized:
description: The API key is missing or invalid
content:
application/json:
schema:
$ref: '#/components/schemas/Envelope'
example:
response: Unauthorized access, please log in or provide a valid key
state: error
data: []
Forbidden:
description: Missing permission, interface required or multi factor authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/Envelope'
example:
response: Unauthorized access, please check your permissions
state: error
data: []
BadRequest:
description: 'Invalid request: a field is missing or a value is invalid'
content:
application/json:
schema:
$ref: '#/components/schemas/Envelope'
example:
response: Invalid request, please provide a productId
state: error
data: []
Locked:
description: Access is blocked because the product is suspended, data.reason names the reason
content:
application/json:
schema:
$ref: '#/components/schemas/Envelope'
example:
response: Access blocked due to product suspension
state: error
data:
reason: Payment overdue
NotFound:
description: The requested record does not exist or is inactive
content:
application/json:
schema:
$ref: '#/components/schemas/Envelope'
example:
response: No product found or product is suspended
state: error
data: []
schemas:
Envelope:
type: object
required:
- response
- state
- data
properties:
response:
type: string
description: English message, stable per case
state:
type: string
enum:
- success
- error
data:
description: Payload, an empty array when there is none
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: API key from the SKRIME dashboard, read it from the environment variable SKRIME_API_KEY