{"openapi":"3.0.1","info":{"title":"OpenAPI definition","version":"v0"},"servers":[{"url":"http://tokens.cardano.org","description":"Generated server url"}],"tags":[{"name":"health","description":"Health Endpoint for the cardano token metadata registry"},{"name":"v1-api","description":"The Cardano offchain metadata API"},{"name":"Actuator","description":"Monitor and interact","externalDocs":{"description":"Spring Boot Actuator Web API Documentation","url":"https://docs.spring.io/spring-boot/docs/current/actuator-api/html/"}}],"paths":{"/metadata/query":{"post":{"tags":["v1-api"],"summary":"Query multiple properties of multiple subjects.","operationId":"getSubjects","requestBody":{"content":{"application/json;charset=utf-8":{"schema":{"$ref":"#/components/schemas/BatchRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatchResponse"}}}},"400":{"description":"Invalid `body`","content":{"application/json;charset=utf-8":{"schema":{"$ref":"#/components/schemas/BatchResponse"}}}}}}},"/api/v2/subjects/query":{"post":{"tags":["v-2-api-controller"],"summary":"Query either all or a subset of properties of the given subjects","operationId":"getSubjects_1","parameters":[{"name":"query_priority","in":"query","description":"the CIP priority: if the same property is present in multiple standards, the one with highest priority is returned","required":false,"schema":{"type":"array","items":{"type":"string","enum":["CIP_26","CIP_68"]}}},{"name":"show_cips_details","in":"query","description":"whether all the CIP specific properties should be returned in the response. False by default","required":false,"schema":{"type":"boolean","default":false}}],"requestBody":{"content":{"application/json;charset=utf-8":{"schema":{"$ref":"#/components/schemas/BatchRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"application/json;charset=utf-8":{"schema":{"$ref":"#/components/schemas/BatchResponse"}}}}}}},"/metadata/{subject}":{"get":{"tags":["v1-api"],"summary":"Query all properties of the single subject specified by the given subject id.","operationId":"getAllPropertiesForSubject","parameters":[{"name":"subject","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenMetadata"}}}},"404":{"description":"`subject` not found","content":{"application/json;charset=utf-8":{"schema":{"$ref":"#/components/schemas/TokenMetadata"}}}}}}},"/metadata/{subject}/properties/{property}":{"get":{"tags":["v1-api"],"summary":"Query a specific property of a single subject specified by the given subject id.","operationId":"getPropertyForSubject","parameters":[{"name":"subject","in":"path","required":true,"schema":{"type":"string"}},{"name":"property","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenMetadata"}}}},"404":{"description":"`subject` or `property` not found","content":{"application/json;charset=utf-8":{"schema":{"$ref":"#/components/schemas/TokenMetadata"}}}}}}},"/health":{"get":{"tags":["health"],"summary":"Returns health status of service including if the initial sync is done","operationId":"getHealthStatus","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HealthResponse"}}}}}}},"/api/v2/subjects/{subject}":{"get":{"tags":["v-2-api-controller"],"summary":"Query either all or a subset of properties of a given subject","operationId":"getSubject","parameters":[{"name":"subject","in":"path","description":"the concatenation of policy id and asset name (if any) to query","required":true,"schema":{"type":"string"}},{"name":"property","in":"query","description":"the list of properties to be returned in the reponse, if none specified, all properties will be returned","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"query_priority","in":"query","description":"the CIP priority: if the same property is present in multiple standards, the one with highest priority is returned","required":false,"schema":{"type":"array","items":{"type":"string","enum":["CIP_26","CIP_68"]}}},{"name":"show_cips_details","in":"query","description":"whether all the CIP specific properties should be returned in the response. False by default","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"OK","content":{"application/json;charset=utf-8":{"schema":{"$ref":"#/components/schemas/Response"}}}}}}},"/actuator":{"get":{"tags":["Actuator"],"summary":"Actuator root web endpoint","operationId":"links","responses":{"200":{"description":"OK","content":{"application/vnd.spring-boot.actuator.v3+json":{"schema":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Link"}}}},"application/vnd.spring-boot.actuator.v2+json":{"schema":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Link"}}}},"application/json":{"schema":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/Link"}}}}}}}}},"/actuator/prometheus":{"get":{"tags":["Actuator"],"summary":"Actuator web endpoint 'prometheus'","operationId":"prometheus","responses":{"200":{"description":"OK","content":{"text/plain;version=0.0.4;charset=utf-8":{"schema":{"type":"object"}},"application/openmetrics-text;version=1.0.0;charset=utf-8":{"schema":{"type":"object"}},"application/vnd.google.protobuf;proto=io.prometheus.client.MetricFamily;encoding=delimited":{"schema":{"type":"object"}}}}}}},"/actuator/health":{"get":{"tags":["Actuator"],"summary":"Actuator web endpoint 'health'","operationId":"health","responses":{"200":{"description":"OK","content":{"application/vnd.spring-boot.actuator.v3+json":{"schema":{"type":"object"}},"application/vnd.spring-boot.actuator.v2+json":{"schema":{"type":"object"}},"application/json":{"schema":{"type":"object"}}}}}}},"/actuator/health/**":{"get":{"tags":["Actuator"],"summary":"Actuator web endpoint 'health-path'","operationId":"health-path","responses":{"200":{"description":"OK","content":{"application/vnd.spring-boot.actuator.v3+json":{"schema":{"type":"object"}},"application/vnd.spring-boot.actuator.v2+json":{"schema":{"type":"object"}},"application/json":{"schema":{"type":"object"}}}}}}}},"components":{"schemas":{"AnnotatedSignature":{"required":["publicKey","signature"],"type":"object","properties":{"signature":{"type":"string"},"publicKey":{"type":"string"}}},"BatchResponse":{"required":["subjects"],"type":"object","properties":{"subjects":{"type":"array","items":{"$ref":"#/components/schemas/TokenMetadata"}}}},"DecimalsProperty":{"required":["sequenceNumber","signatures","value"],"type":"object","properties":{"signatures":{"type":"array","items":{"$ref":"#/components/schemas/AnnotatedSignature"}},"sequenceNumber":{"minimum":0,"exclusiveMinimum":false,"type":"number"},"value":{"maximum":255,"exclusiveMaximum":false,"minimum":0,"exclusiveMinimum":false,"type":"number","example":1}}},"DescriptionProperty":{"required":["sequenceNumber","signatures","value"],"type":"object","properties":{"signatures":{"type":"array","items":{"$ref":"#/components/schemas/AnnotatedSignature"}},"sequenceNumber":{"minimum":0,"exclusiveMinimum":false,"type":"number"},"value":{"maxLength":500,"minLength":0,"type":"string"}}},"LogoProperty":{"required":["sequenceNumber","signatures","value"],"type":"object","properties":{"signatures":{"type":"array","items":{"$ref":"#/components/schemas/AnnotatedSignature"}},"sequenceNumber":{"minimum":0,"exclusiveMinimum":false,"type":"number"},"value":{"type":"string","format":"byte"}}},"NameProperty":{"required":["sequenceNumber","signatures","value"],"type":"object","properties":{"signatures":{"type":"array","items":{"$ref":"#/components/schemas/AnnotatedSignature"}},"sequenceNumber":{"minimum":0,"exclusiveMinimum":false,"type":"number"},"value":{"maxLength":50,"minLength":1,"type":"string"}}},"TickerProperty":{"required":["sequenceNumber","signatures","value"],"type":"object","properties":{"signatures":{"type":"array","items":{"$ref":"#/components/schemas/AnnotatedSignature"}},"sequenceNumber":{"minimum":0,"exclusiveMinimum":false,"type":"number"},"value":{"maxLength":9,"minLength":2,"type":"string","example":"QUID"}}},"TokenMetadata":{"required":["description","name","subject"],"type":"object","properties":{"additionalProperties":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/TokenMetadataPropertyObject"}},"subject":{"type":"string","example":"b377d03a568dde663534e040fc32a57323ec00970df0e863eba3f098717569640a"},"policy":{"type":"string","example":"82008200581ce62601e8eeec975f3f124a288cd0ecb2973f5fc225629f1401a79b16"},"name":{"$ref":"#/components/schemas/NameProperty"},"description":{"$ref":"#/components/schemas/DescriptionProperty"},"url":{"$ref":"#/components/schemas/UrlProperty"},"ticker":{"$ref":"#/components/schemas/TickerProperty"},"decimals":{"$ref":"#/components/schemas/DecimalsProperty"},"logo":{"$ref":"#/components/schemas/LogoProperty"},"updated":{"type":"string","format":"date-time"},"updatedBy":{"type":"string"}}},"TokenMetadataPropertyObject":{"required":["sequenceNumber","signatures"],"type":"object","properties":{"signatures":{"type":"array","items":{"$ref":"#/components/schemas/AnnotatedSignature"}},"sequenceNumber":{"minimum":0,"exclusiveMinimum":false,"type":"number"},"value":{"type":"object"}}},"UrlProperty":{"required":["sequenceNumber","signatures","value"],"type":"object","properties":{"signatures":{"type":"array","items":{"$ref":"#/components/schemas/AnnotatedSignature"}},"sequenceNumber":{"minimum":0,"exclusiveMinimum":false,"type":"number"},"value":{"maxLength":250,"minLength":0,"pattern":"^https://","type":"string","example":"https://www.iohk.io"}}},"BatchRequest":{"required":["subjects"],"type":"object","properties":{"subjects":{"type":"array","items":{"type":"string"}},"properties":{"type":"array","items":{"type":"string"}}}},"FungibleTokenMetadata":{"type":"object","properties":{"decimals":{"type":"integer","format":"int64"},"description":{"type":"string"},"logo":{"type":"string"},"name":{"type":"string"},"ticker":{"type":"string"},"url":{"type":"string"},"version":{"type":"integer","format":"int64"}}},"LongProperty":{"type":"object","properties":{"value":{"type":"integer","format":"int64"},"source":{"type":"string"}}},"Metadata":{"type":"object","properties":{"name":{"$ref":"#/components/schemas/StringProperty"},"description":{"$ref":"#/components/schemas/StringProperty"},"ticker":{"$ref":"#/components/schemas/StringProperty"},"decimals":{"$ref":"#/components/schemas/LongProperty"},"logo":{"$ref":"#/components/schemas/StringProperty"},"url":{"$ref":"#/components/schemas/StringProperty"},"version":{"$ref":"#/components/schemas/LongProperty"},"empty":{"type":"boolean"},"valid":{"type":"boolean"}}},"Standards":{"type":"object","properties":{"cip26":{"$ref":"#/components/schemas/TokenMetadata"},"cip68":{"$ref":"#/components/schemas/FungibleTokenMetadata"}}},"StringProperty":{"type":"object","properties":{"value":{"type":"string"},"source":{"type":"string"}}},"Subject":{"type":"object","properties":{"subject":{"type":"string"},"metadata":{"$ref":"#/components/schemas/Metadata"},"standards":{"$ref":"#/components/schemas/Standards"}}},"HealthResponse":{"type":"object","properties":{"synced":{"type":"boolean"},"syncStatus":{"type":"string"}}},"Response":{"type":"object","properties":{"subject":{"$ref":"#/components/schemas/Subject"},"queryPriority":{"type":"array","items":{"type":"string"}}}},"Link":{"type":"object","properties":{"href":{"type":"string"},"templated":{"type":"boolean"}}}}}}