FINOS Security API
The Security API from FINOS — 8 operation(s) for security.
The Security API from FINOS — 8 operation(s) for security.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/finos-security-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
version: 20.17.1
title: Pod Security API
description: 'This document refers to Symphony API calls that do not need
encryption or decryption of content.
- sessionToken can be obtained by calling the
authenticationAPI on the symphony back end and the key manager
respectively. Refer to the methods described in authenticatorAPI.yaml.
- Actions are defined to be atomic, ie will succeed in their entirety
or fail and have changed nothing.
- If it returns a 40X status then it will have made no change to the
system even if ome subset of the request would have succeeded.
- If this contract cannot be met for any reason then this is an error
and the response code will be 50X.
'
servers:
- url: https://yourpodURL.symphony.com/pod
tags:
- name: Security
paths:
/v1/companycert/list:
get:
summary: List all trusted certs
parameters:
- name: sessionToken
description: Session authentication token.
in: header
required: true
schema:
type: string
- name: skip
description: Pagination start
in: query
required: false
schema:
type: integer
- name: limit
description: Row limit
in: query
required: false
schema:
type: integer
tags:
- Security
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CompanyCertInfoList'
example:
- companyCertAttributes:
name: agentservice
type:
type: USER
status:
type: TRUSTED
companyCertInfo:
fingerPrint: 300a...
lastSeen: 0
updatedAt: 0
updatedBy: 0
commonName: agentservice
expiryDate: 1781886755000
'400':
description: Client error, see response body for further details.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 400
message: // Client error, see response body for further details.
'401':
description: 'Unauthorized: Invalid session token.'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 401
message: Invalid session
'403':
description: 'Forbidden: Caller lacks necessary entitlement.'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 403
message: The user lacks the required entitlement to perform this operation
'500':
description: Server error, see response body for further details.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 500
message: // Server error, see response body for further details.
/v2/companycert/create:
post:
summary: Create a company trusted or untrusted certificate. Different from V1 in that we reject expired certificates.
parameters:
- name: sessionToken
description: Session authentication token.
in: header
required: true
schema:
type: string
tags:
- Security
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CompanyCertDetail'
example:
- companyCertAttributes:
name: jira
type:
type: USER
status:
type: KNOWN
companyCertInfo:
fingerPrint: 450369...
issuerFingerPrint: c35680...
lastSeen: 1529994790226
updatedAt: 1529598066602
updatedBy: 9208409884327
commonName: jiraWebHookIntegration
expiryDate: 1768510565000
certInfo:
- name: General
attributes:
- name: Issuer
value: C=US O=Symphony Communications LLC CN=bot_user_provisioning
- name: Subject
value: C=US OU=NOT FOR PRODUCTION USE O=Symphony Communications LLC CN=jiraWebHookIntegration
- name: Signature Algorithm
value: SHA256withRSA
- name: Validity
attributes:
- name: Not Before
value: Mon Jan 15 20:56:05 UTC 2018
- name: Not After
value: Thu Jan 15 20:56:05 UTC 2026
- name: Public Key
attributes:
- name: Algorithm
value: RSA
- name: Format
value: X.509
'400':
description: Client error, see response body for further details.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 400
message: // Client error, see response body for further details.
'401':
description: 'Unauthorized: Invalid session token.'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 401
message: Invalid session
'403':
description: 'Forbidden: Caller lacks necessary entitlement.'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 403
message: The user lacks the required entitlement to perform this operation
'500':
description: Server error, see response body for further details.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 500
message: // Server error, see response body for further details.
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CompanyCert'
required: true
/v1/companycert/delete:
post:
summary: Delete a company certificate
parameters:
- name: sessionToken
description: Session authentication token.
in: header
required: true
schema:
type: string
tags:
- Security
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessResponse'
example:
format: TEXT
message: OK
'400':
description: Client error, see response body for further details.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 400
message: // Client error, see response body for further details.
'401':
description: 'Unauthorized: Invalid session token.'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 401
message: Invalid session
'403':
description: 'Forbidden: Caller lacks necessary entitlement.'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 403
message: The user lacks the required entitlement to perform this operation
'500':
description: Server error, see response body for further details.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 500
message: // Server error, see response body for further details.
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/StringId'
required: true
/v1/companycert/{fingerPrint}/get:
get:
summary: Get the details of a company certificate
parameters:
- name: fingerPrint
description: Certificate fingerPrint (ID)
in: path
required: true
schema:
type: string
- name: sessionToken
description: Session authentication token.
in: header
required: true
schema:
type: string
tags:
- Security
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CompanyCertDetail'
example:
- companyCertAttributes:
name: jira
type:
type: USER
status:
type: KNOWN
companyCertInfo:
fingerPrint: 450369...
issuerFingerPrint: c35680...
lastSeen: 1529994790226
updatedAt: 1529598066602
updatedBy: 9208409884327
commonName: jiraWebHookIntegration
expiryDate: 1768510565000
certInfo:
- name: General
attributes:
- name: Issuer
value: C=US O=Symphony Communications LLC CN=bot_user_provisioning
- name: Subject
value: C=US OU=NOT FOR PRODUCTION USE O=Symphony Communications LLC CN=jiraWebHookIntegration
- name: Signature Algorithm
value: SHA256withRSA
- name: Validity
attributes:
- name: Not Before
value: Mon Jan 15 20:56:05 UTC 2018
- name: Not After
value: Thu Jan 15 20:56:05 UTC 2026
- name: Public Key
attributes:
- name: Algorithm
value: RSA
- name: Format
value: X.509
'400':
description: Client error, see response body for further details.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 400
message: // Client error, see response body for further details.
'401':
description: 'Unauthorized: Invalid session token.'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 401
message: Invalid session
'403':
description: 'Forbidden: Caller lacks necessary entitlement.'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 403
message: The user lacks the required entitlement to perform this operation
'500':
description: Server error, see response body for further details.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 500
message: // Server error, see response body for further details.
/v1/companycert/{fingerPrint}/update:
post:
summary: Update a company certificate
parameters:
- name: fingerPrint
description: Certificate fingerPrint (ID)
in: path
required: true
schema:
type: string
- name: sessionToken
description: Session authentication token.
in: header
required: true
schema:
type: string
tags:
- Security
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessResponse'
example:
format: TEXT
message: OK
'400':
description: Client error, see response body for further details.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 400
message: // Client error, see response body for further details.
'401':
description: 'Unauthorized: Invalid session token.'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 401
message: Invalid session
'403':
description: 'Forbidden: Caller lacks necessary entitlement.'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 403
message: The user lacks the required entitlement to perform this operation
'500':
description: Server error, see response body for further details.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 500
message: // Server error, see response body for further details.
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CompanyCertAttributes'
required: true
/v1/companycert/{fingerPrint}/issuedBy:
get:
summary: 'Return a list of all certificates which were verified to the cert whose
fingerprint is passed.
'
parameters:
- name: fingerPrint
description: Certificate fingerPrint (ID)
in: path
required: true
schema:
type: string
- name: sessionToken
description: Session authentication token.
in: header
required: true
schema:
type: string
tags:
- Security
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CompanyCertInfoList'
example:
- companyCertAttributes:
name: agentservice
type:
type: USER
status:
type: TRUSTED
companyCertInfo:
fingerPrint: 300a...
lastSeen: 0
updatedAt: 0
updatedBy: 0
commonName: agentservice
expiryDate: 1781886755000
'400':
description: Client error, see response body for further details.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 400
message: // Client error, see response body for further details.
'401':
description: 'Unauthorized: Invalid session token.'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 401
message: Invalid session
'403':
description: 'Forbidden: Caller lacks necessary entitlement.'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 403
message: The user lacks the required entitlement to perform this operation
'500':
description: Server error, see response body for further details.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 500
message: // Server error, see response body for further details.
/v1/companycert/podmanaged/list:
get:
summary: List all trusted certs
parameters:
- name: sessionToken
description: Session authentication token.
in: header
required: true
schema:
type: string
- name: skip
description: Pagination start
in: query
required: false
schema:
type: integer
- name: limit
description: Row limit
in: query
required: false
schema:
type: integer
tags:
- Security
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CompanyCertInfoList'
example:
- companyCertAttributes:
name: agentservice
type:
type: USER
status:
type: TRUSTED
companyCertInfo:
fingerPrint: 300a...
lastSeen: 0
updatedAt: 0
updatedBy: 0
commonName: agentservice
expiryDate: 1781886755000
'400':
description: Client error, see response body for further details.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 400
message: // Client error, see response body for further details.
'401':
description: 'Unauthorized: Invalid session token.'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 401
message: Invalid session
'403':
description: 'Forbidden: Caller lacks necessary entitlement.'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 403
message: The user lacks the required entitlement to perform this operation
'500':
description: Server error, see response body for further details.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 500
message: // Server error, see response body for further details.
/v1/companycert/type/list:
post:
summary: List all certs of the given types
parameters:
- name: sessionToken
description: Session authentication token.
in: header
required: true
schema:
type: string
- name: skip
description: Pagination start
in: query
required: false
schema:
type: integer
- name: limit
description: Row limit
in: query
required: false
schema:
type: integer
tags:
- Security
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CompanyCertInfoList'
example:
- companyCertAttributes:
name: agentservice
type:
type: USER
status:
type: TRUSTED
companyCertInfo:
fingerPrint: 300a...
lastSeen: 0
updatedAt: 0
updatedBy: 0
commonName: agentservice
expiryDate: 1781886755000
'400':
description: Client error, see response body for further details.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 400
message: // Client error, see response body for further details.
'401':
description: 'Unauthorized: Invalid session token.'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 401
message: Invalid session
'403':
description: 'Forbidden: Caller lacks necessary entitlement.'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 403
message: The user lacks the required entitlement to perform this operation
'500':
description: Server error, see response body for further details.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 500
message: // Server error, see response body for further details.
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CompanyCertTypeList'
description: Certificate type list
required: true
components:
schemas:
Error:
type: object
properties:
code:
type: integer
format: int32
example: 401
message:
type: string
example: Invalid session
CompanyCertDetail:
type: object
properties:
companyCertAttributes:
$ref: '#/components/schemas/CompanyCertAttributes'
companyCertInfo:
$ref: '#/components/schemas/CompanyCertInfo'
certInfo:
$ref: '#/components/schemas/CertInfo'
CertInfoItem:
type: object
properties:
name:
type: string
example: Public Key
attributes:
type: array
items:
$ref: '#/components/schemas/NameValuePair'
example:
- name: Algorithm
value: RSA
- name: Format
value: X.509
NameValuePair:
type: object
properties:
name:
type: string
example: Algorithm
value:
type: string
example: RSA
CompanyCert:
type: object
properties:
pem:
type: string
description: An X509 certificate in PEM format
example: '-----BEGIN CERTIFICATE-----MIIH/TC...p9DBiB/-----END CERTIFICATE-----'
attributes:
$ref: '#/components/schemas/CompanyCertAttributes'
CertInfo:
type: array
items:
$ref: '#/components/schemas/CertInfoItem'
example:
- name: Validity
attributes:
- name: Not Before
value: Mon Jan 15 20:56:05 UTC 2018
- name: Not After
value: Thu Jan 15 20:56:05 UTC 2026
- name: Public Key
attributes:
- name: Algorithm
value: RSA
- name: Format
value: X.509
CompanyCertTypeList:
type: array
items:
$ref: '#/components/schemas/CompanyCertType'
CompanyCertStatus:
type: object
properties:
type:
type: string
enum:
- TRUSTED
- KNOWN
- REVOKED
- DISABLED
example: TRUSTED
CompanyCertInfo:
type: object
properties:
fingerPrint:
type: string
description: Unique identifier
example: 300a...
issuerFingerPrint:
type: string
description: Unique identifier of issuer cert if known
example: 450s...
lastSeen:
type: integer
format: int64
description: Date when we last saw this certificate presented
example: 0
updatedAt:
type: integer
format: int64
description: Date when this cert was last updated by administrator
example: 0
updatedBy:
type: integer
format: int64
description: User ID of administrator who last updated this cert
example: 0
commonName:
type: string
description: The Symphony account name which this certificate authenticates
example: agentservice
expiryDate:
type: integer
format: int64
description: Expiry date of this cert
example: 1781886755000
CompanyCertInfoList:
type: array
items:
type: object
properties:
companyCertAttributes:
$ref: '#/components/schemas/CompanyCertAttributes'
companyCertInfo:
$ref: '#/components/schemas/CompanyCertInfo'
example:
- companyCertAttributes:
name: agentservice
type:
type: USER
status:
type: TRUSTED
companyCertInfo:
fingerPrint: 300a...
lastSeen: 0
updatedAt: 0
updatedBy: 0
commonName: agentservice
expiryDate: 1781886755000
CompanyCertType:
type: object
properties:
type:
type: string
enum:
- USERSIGNING
- USER
- OPERATIONSSIGNING
- OPERATIONSUSER
example: USER
CompanyCertAttributes:
type: object
properties:
name:
type: string
description: Friendly name assigned by administrator
example: agentservice
type:
$ref: '#/components/schemas/CompanyCertType'
status:
$ref: '#/components/schemas/CompanyCertStatus'
StringId:
type: object
properties:
id:
type: string
example: xhGxbTcvTDK6EIMMrwdOrX___quztr2HdA
SuccessResponse:
type: object
properties:
format:
type: string
enum:
- TEXT
- XML
example: TEXT
message:
type: string
example: Success