openapi: 3.0.3 info: title: VirusTotal API v3 - Access Control Access Control - Group Management Threat Graphs API version: '3.0' description: Manage users, groups, service accounts, API quotas, and overall account usage in VirusTotal / Google Threat Intelligence. contact: name: VirusTotal / Google Threat Intelligence url: https://docs.virustotal.com/reference/overview license: name: VirusTotal Terms of Service url: https://www.virustotal.com/gui/terms-of-service x-generated-from: https://storage.googleapis.com/gtidocresources/guides/GTI_API_v3_openapi_spec_10022025.json x-last-validated: '2026-05-29' servers: - url: https://www.virustotal.com/api/v3 description: VirusTotal / GTI API v3 production. security: - VTApiKey: [] tags: - name: Threat Graphs description: Threat Graphs paths: /graphs: get: tags: - Threat Graphs deprecated: false description: "Endpoint used to search graphs.\n\nThere are a set of multiple modifiers that you can use to refine your search results. You can combine all of them together and use them in conjunction with AND, OR and NOT operators.\n\nDate and numeric fields support the suffix plus or minus to match values greater or less than the passed value. If not sign has been added to the modifier, you will get exact matches. You can use more than once the same modifier in the same query to define ranges: `creation_date:2018-11-1+` `creation_date:2018-11-12-` will match graphs created between 2018-11-1 and 2018-11-22.\n\n**Graph-related modifiers**\n\n| Modifier | Description | Example |\n| :------------------ | :------------------------------------------------- | :------------------------------------------------------------------- |\n| id: | Filters by graph identifier. | id:g675a2fd4c8834e288afd71bbbe88f78884e7d21a8c9348b5ab45cc9281cffc3c |\n| name: | Filters by graph name. | name:Wannacry |\n| owner: | Filters by graphs owned by user. | owner:richard_hendricks |\n| group: | Filters by graphs owned by group. | group:piedpiper |\n| visible_to_user: | Filters by graphs visible to user. | visible_to_user:richard_hendricks |\n| visible_to_group: | Filters by graphs visible to group. | visible_to_group:piedpiper |\n| private: | Filters by private graphs. | private:true, private:false |\n| creation_date: | Filters by the graph creation date. | creation_date:2018-11-1 |\n| last_modified_date: | Filters by the last date the graph was modified. | last_modified_date:2018-11-12 |\n| total_nodes: | Filters by graphs containing some amount of nodes. | total_nodes:100 |\n| comments_count: | Filter by the number of comments of the graph. | comments_count:10+ |\n| views_count: | Filter by the number of graph views. | views_count:1000+ |\n\n**Node-related modifiers**\n\n| Modifier | Description | Example |\n| :---------- | :------------------------------------------------------- | :-------------------------------------------------------------------- |\n| label: | Filters by graphs containing nodes with a specific label | label:Kill switch |\n| file: | Filters by graphs containing the file. | file:131f95c51cc819465fa1797f6ccacf9d494aaaff46fa3eac73ae63ffbdfd8267 |\n| domain: | Filters by graphs containing the domain. | domain:piedpiper.com |\n| ip_address: | Filters by graphs containing the ip address. | ip_address:1.1.1.1 |\n| url: | Filters by graphs containing the url. | url: |\n| actor: | Filters by graphs containing the actor. | actor:funny bear |\n| victim: | Filters by graphs containing the victim. | victim:richard_hendricks |\n| email: | Filters by graphs containing the email. | email:[richard@piedpiper.com](mailto:richard@piedpiper.com) |\n| department: | Filters by graphs containing the department. | department:engineers |\n\nIn addition to these modifiers, you can do a free search query. The search engine will return graphs that match the query with the content of any field in the graph.\n\n```curl All graphs\ncurl --request POST \\\n --url https://www.virustotal.com/api/v3/graphs \\\n --header 'x-apikey: '\n```\n```curl FIlter by user\ncurl --request POST \\\n --url https://www.virustotal.com/api/v3/graphs?filter=owner:bbunny \\\n --header 'x-apikey: '\n```\n```curl Attributes selection\ncurl --request POST \\\n --url https://www.virustotal.com/api/v3/graphs?filter=owner:bbunny&attributes=private,graph_data \\\n --header 'x-apikey: '\n```\n```curl Filter by domain\ncurl --request POST \\\n --url https://www.virustotal.com/api/v3/graphs?filter=domain:hooli.com \\\n --header 'x-apikey: '\n```\n\nSupported `order` fields are: `name`, `owner`, `creation_date`, `last_modified_date`, `views_count` and `comments_count`.\n" operationId: graphs parameters: - description: Return the graphs matching the given criteria only in: query name: filter schema: type: string - description: Maximum number graphs to retrieve in: query name: limit schema: format: int32 type: integer - description: Continuation cursor in: query name: cursor schema: type: string - description: Sort order in: query name: order schema: type: string - description: Specific fields to retrieve in: query name: attributes schema: type: string security: - VTApiKey: [] summary: VirusTotal Search Graphs responses: '200': description: Successful VirusTotal API response. content: application/json: schema: $ref: '#/components/schemas/DataEnvelope' '400': description: Bad request. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Missing or invalid API key. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Object not found. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '429': description: Rate limit or quota exceeded. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Threat Graphs deprecated: false description: "This endpoint can be used to create new graphs. Note that private graphs will increment the usage of the private graphs quota in your Google Threat Intelligence plan. \n\n```json Request example\n{\n \"data\": {\n \"attributes\": {\n \"comments_count\": 0,\n \"creation_date\": 1599060646,\n \"graph_data\": {\n \"description\": \"test\",\n \"version\": \"5.0.0\"\n },\n \"last_modified_date\": 1599117623,\n \"links\": [\n {\n \"connection_type\": \"last_serving_ip_address\",\n \"source\": \"ecd87dff4decb36ebf35cf2d327cce62fe1e5666d694c4b0f11ff67d540ff4dc\",\n \"target\": \"relationships_last_serving_ip_address_ecd87dff4decb36ebf35cf2d327cce62fe1e5666d694c4b0f11ff67d540ff4dc\"\n },\n {\n \"connection_type\": \"last_serving_ip_address\",\n \"source\": \"relationships_last_serving_ip_address_e743cffce9efddfb4f1d7e7dc3c10c6d562e61b5f65e6dd3fd4f28b604fcc2f6\",\n \"target\": \"138.133.35.39\"\n },\n {\n \"connection_type\": \"contacted_ips\",\n \"source\": \"e743cffce9efddfb4f1d7e7dc3c10c6d562e61b5f65e6dd3fd4f28b604fcc2f6\",\n \"target\": \"relationships_contacted_ips_e743cffce9efddfb4f1d7e7dc3c10c6d562e61b5f65e6dd3fd4f28b604fcc2f6\"\n },\n {\n \"connection_type\": \"contacted_ips\",\n \"source\": \"relationships_contacted_ips_e743cffce9efddfb4f1d7e7dc3c10c6d562e61b5f65e6dd3fd4f28b604fcc2f6\",\n \"target\": \"138.133.35.39\"\n },\n {\n \"connection_type\": \"commonality\",\n \"source\": \"relationships_commonality_106438826\",\n \"target\": \"f053cb783411211b54e2837ec01e0998e3d9bc042f599d95f7f2cb4ba348305d\"\n },\n {\n \"connection_type\": \"hunting\",\n \"source\": \"relationships_hunting_6534979578789888\",\n \"target\": \"5a041d8d72fc12d21e09fd781831ff8279199025c3b3da4b13ec24d20200340f\"\n }\n ],\n \"nodes\": [\n {\n \"entity_attributes\": {\n \"has_detections\": true\n },\n \"entity_id\": \"e743cffce9efddfb4f1d7e7dc3c10c6d562e61b5f65e6dd3fd4f28b604fcc2f6\",\n \"index\": 0,\n \"text\": \"\",\n \"type\": \"url\",\n \"x\": 0,\n \"y\": 0\n },\n {\n \"entity_attributes\": {},\n \"entity_id\": \"relationships_last_serving_ip_address_e743cffce9efddfb4f1d7e7dc3c10c6d562e61b5f65e6dd3fd4f28b604fcc2f6\",\n \"index\": 1,\n \"text\": \"\",\n \"type\": \"relationship\",\n \"x\": -27.425258029385414,\n \"y\": -19.198748008541706\n },\n {\n \"entity_attributes\": {\n \"country\": \"OM\",\n \"has_detections\": true\n },\n \"entity_id\": \"138.133.35.39\",\n \"fx\": -60.42155469411466,\n \"fy\": -1.7339803589372877,\n \"index\": 2,\n \"text\": \"\",\n \"type\": \"ip_address\",\n \"x\": -60.42155469411466,\n \"y\": -1.7339803589372877\n },\n {\n \"entity_attributes\": {\n \"has_detections\": false,\n \"type_tag\": \"text\"\n },\n \"entity_id\": \"733314c4b079b42174c6b55fb89755faca798378ab999ea240b3f14b0d24a90f\",\n \"index\": 6,\n \"text\": \"\",\n \"type\": \"file\",\n \"x\": 27.265746471390678,\n \"y\": -9.726931961146573\n },\n {\n \"entity_attributes\": {\n \"has_detections\": false\n },\n \"entity_id\": \"www.blablabla.com\",\n \"index\": 88,\n \"text\": \"\",\n \"type\": \"domain\",\n \"x\": -234.75082645175817,\n \"y\": 8.15972244734705\n },\n {\n \"entity_attributes\": {\n \"intelligence_query\": \"entity: url path: blablabla\",\n \"relationship_type\": \"intelligence\"\n },\n \"entity_id\": \"intelligence_-1173580683\",\n \"index\": 154,\n \"text\": \"VTI: entity: url path: blablabla\",\n \"type\": \"relationship\",\n \"x\": -27.95565446983731,\n \"y\": -64.23455937679253\n },,\n {\n \"entity_attributes\": {\n \"commonalities\": [\n {\n \"commonality\": \"path\",\n \"value\": \"/\"\n }\n ],\n \"relationship_type\": \"commonality\"\n },\n \"entity_id\": \"relationships_commonality_106438826\",\n \"fx\": -107.49097518267031,\n \"fy\": 198.2339878510857,\n \"index\": 160,\n \"text\": \"path: /\",\n \"type\": \"relationship\",\n \"x\": -107.49097518267031,\n \"y\": 198.2339878510857\n },\n {\n \"entity_attributes\": {\n \"relationship_type\": \"hunting\",\n \"ruleset_id\": \"6533973538739388\"\n },\n \"entity_id\": \"relationships_hunting_6533973538739388\",\n \"index\": 161,\n \"text\": \"\",\n \"type\": \"relationship\",\n \"x\": -130.72553403592232,\n \"y\": 346.7297024640031\n }\n ],\n \"private\": true\n },\n \"type\": \"graph\"\n }\n}\n```\n\n```json Response example\n{\n \"data\": {\n \"id\": \"g0538d03053194c338643183e315b134ec3463a392330430938033934f3be3f37\",\n \"type\": \"graph\"\n }\n}\n```\n" operationId: createGraphs parameters: [] requestBody: content: application/json: schema: properties: RAW_BODY: format: json type: string type: object security: - VTApiKey: [] summary: VirusTotal Create a Graph responses: '200': description: Successful VirusTotal API response. content: application/json: schema: $ref: '#/components/schemas/DataEnvelope' '400': description: Bad request. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Missing or invalid API key. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Object not found. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '429': description: Rate limit or quota exceeded. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK /graphs/{id}: delete: tags: - Threat Graphs deprecated: false description: VirusTotal Delete a Graph operationId: graphsDelete parameters: - description: A 65 char length id which uniquely identify the graph. in: path name: id required: true schema: type: string responses: '200': content: text/plain: examples: Result: value: '' description: '200' '400': description: Bad request. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Missing or invalid API key. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Object not found. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '429': description: Rate limit or quota exceeded. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' security: - VTApiKey: [] summary: VirusTotal Delete a Graph x-microcks-operation: delay: 0 dispatcher: FALLBACK get: tags: - Threat Graphs deprecated: false description: "Returns a [Graph](https://gtidocs.virustotal.com/reference/graph-object) object.\n\n```json Response example\n{\n \"data\": {\n \"attributes\": {\n \"graph_data\": {\n \"description\": \"Hooli.com investigation\"\n },\n \"links\": [\n {\n \"connection_type\": \"resolutions\",\n \"source\": \"www.hooli.com\",\n \"target\": \"relationships_resolutions_wwwhoolicom\"\n },\n {\n \"connection_type\": \"resolutions\",\n \"source\": \"relationships_resolutions_wwwhoolicom\",\n \"target\": \"8.8.8.8\"\n }\n ],\n \"private\": false,\n \"creation_date\": 1530006951,\n \"position\": {\n \"y\": 388,\n \"x\": 897,\n \"scale\": \"1\"\n },\n \"nodes\": [\n {\n \"index\": 0,\n \"entity_id\": \"www.hooli.com\",\n \"text\": \"Root Node\",\n \"y\": 65,\n \"x\": -18,\n \"type\": \"domain\"\n },\n {\n \"y\": 42,\n \"index\": 1,\n \"entity_id\": \"relationships_resolutions_wwwhoolicom\",\n \"type\": \"relationship\",\n \"x\": -56\n },\n {\n \"index\": 2,\n \"entity_id\": \"8.8.8.8\",\n \"fx\": 3.3,\n \"fy\": 4.4,\n \"y\": 0,\n \"x\": -64,\n \"type\": \"ip_address\"\n },\n {\n \"index\": 2,\n \"entity_id\": \"131f95c51cc819465fa1797f6ccacf9d494aaaff46fa3eac73ae63ffbdfd8267\",\n \"fx\": 3.3,\n \"fy\": 4.4,\n \"y\": 0,\n \"x\": -64,\n \"type\": \"file\"\n },\n {\n \"index\": 2,\n \"entity_id\": \"1a0556926f7e76419d12e4c6ad52f10388af11f2689f6c0fb6111a2b85f131de\",\n \"fx\": 3.3,\n \"fy\": 4.4,\n \"y\": 0,\n \"x\": -64,\n \"type\": \"url\"\n }\n ]\n },\n \"type\": \"graph\",\n \"id\": \"g3ad78ce6c21ae675e81ac376a6fc016c37befa6dc87484b95a2b069f8d04ef44\",\n \"links\": {\n \"self\": \"https://www.virustotal.com/api/v3/graphs/g3ad78ce6c21ae675e81ac376a6fc016c37befa6dc87484b95a2b069f8d04ef44\"\n }\n }\n}\n```\n" operationId: graphsInfo parameters: - description: A 65 char length id which uniquely identify the graph. in: path name: id required: true schema: type: string security: - VTApiKey: [] summary: VirusTotal Get a Graph Object responses: '200': description: Successful VirusTotal API response. content: application/json: schema: $ref: '#/components/schemas/DataEnvelope' '400': description: Bad request. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Missing or invalid API key. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Object not found. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '429': description: Rate limit or quota exceeded. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK patch: tags: - Threat Graphs deprecated: false description: "```json Update request example\n{\n \"data\":{\n \"attributes\": {\n \"private\": true\n },\n \"type\":\"graph\"\n }\n}\n```\n\n```json Response example\n{\n \"data\": {\n \"attributes\": {\n \"private\": false,\n \"nodes\": [\n {\n \"type\":\"domain\",\n \"entity_id\":\"www.hooli.com\",\n \"x\":-18,\n \"y\":65,\n \"text\":\"Root Node\",\n \"index\":0\n },\n {\n \"type\":\"relationship\",\n \"entity_id\":\"relationships_resolutions_wwwhoolicom\",\n \"x\":-56,\n \"y\":42,\n \"index\":1\n },\n {\n \"type\":\"ip_address\",\n \"entity_id\":\"8.8.8.8\",\n \"x\":-64,\n \"y\":0,\n \"index\":2,\n \"fx\":3.3,\n \"fy\":4.4\n },\n {\n \"type\":\"file\",\n \"entity_id\":\"131f95c51cc819465fa1797f6ccacf9d494aaaff46fa3eac73ae63ffbdfd8267\",\n \"x\":-64,\n \"y\":0,\n \"index\":2,\n \"fx\":3.3,\n \"fy\":4.4\n },\n {\n \"type\":\"url\",\n \"entity_id\":\"1a0556926f7e76419d12e4c6ad52f10388af11f2689f6c0fb6111a2b85f131de\",\n \"x\":-64,\n \"y\":0,\n \"index\":2,\n \"fx\":3.3,\n \"fy\":4.4\n }\n ],\n \"links\":[\n {\n \"source\":\"www.hooli.com\",\n \"target\":\"relationships_resolutions_wwwhoolicom\",\n \"connection_type\":\"resolutions\"\n },\n {\n \"source\":\"relationships_resolutions_wwwhoolicom\",\n \"target\":\"8.8.8.8\",\n \"connection_type\":\"resolutions\"\n }\n ],\n \"position\": {\n \"x\":897,\n \"y\":388,\n \"scale\":\"1\"\n },\n \"graph_data\": {\n \"description\": \"Hooli.com graph\"\n }\n },\n \"type\": \"graph\"\n }\n}\n```\n" operationId: graphsUpdate parameters: - description: A 65 char length id which uniquely identify the graph. in: path name: id required: true schema: type: string requestBody: content: application/json: schema: properties: graph_data: description: Highlevel graph data. properties: version: description: Current version of the graph. type: string type: object links: description: Array of links. items: properties: connection_type: description: Type of the connection between the source and the target. type: string source: description: Entity id of the link source. type: string target: description: Entity id of the link target. type: string type: object type: array nodes: description: Array of nodes. items: properties: entity_attributes: description: (optional) Entity related attributes. type: object entity_id: description: Node entity id. type: string fx: description: (optional) Force x position. format: float type: number fy: description: (optional) Force y position. format: float type: number index: description: Index of the node list. format: int32 type: integer text: description: (optional) Node label. type: string type: description: Node entity type. type: string x: description: X position of the node. format: float type: number y: description: Y position of the node. format: float type: number type: object type: array private: description: Private status. type: boolean type: object security: - VTApiKey: [] summary: VirusTotal Update a Graph Object responses: '200': description: Successful VirusTotal API response. content: application/json: schema: $ref: '#/components/schemas/DataEnvelope' '400': description: Bad request. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Missing or invalid API key. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Object not found. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '429': description: Rate limit or quota exceeded. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK /graphs/{id}/comments: get: tags: - Threat Graphs deprecated: false description: 'This endpoint returns the comments posted in a given graph. Check [Graph comments relationship page](https://gtidocs.virustotal.com/reference/graph-comments) to know more about the returned object. ' operationId: getGraphComments parameters: - description: A 65 char length id which uniquely identify the graph. in: path name: id required: true schema: type: string - description: Maximum number of related objects to retrieve in: query name: limit schema: type: string - description: Continuation cursor in: query name: cursor schema: format: int32 type: integer security: - VTApiKey: [] summary: VirusTotal Get Comments on a Graph responses: '200': description: Successful VirusTotal API response. content: application/json: schema: $ref: '#/components/schemas/DataEnvelope' '400': description: Bad request. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Missing or invalid API key. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Object not found. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '429': description: Rate limit or quota exceeded. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Threat Graphs deprecated: false description: VirusTotal Add a Comment to a Graph operationId: postGraphsComments parameters: - description: A 65 char length id which uniquely identify the graph. in: path name: id required: true schema: type: string requestBody: content: application/json: schema: properties: data: default: '{"type": "comment", "attributes": {"text": "test"}}' description: A comment object. format: json type: string required: - data type: object security: - VTApiKey: [] summary: VirusTotal Add a Comment to a Graph responses: '200': description: Successful VirusTotal API response. content: application/json: schema: $ref: '#/components/schemas/DataEnvelope' '400': description: Bad request. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Missing or invalid API key. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Object not found. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '429': description: Rate limit or quota exceeded. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK /graphs/{id}/relationships/{relationship}: get: tags: - Threat Graphs deprecated: false description: 'This endpoint is the same as [/graphs/{id}/{relationship}](https://gtidocs.virustotal.com/reference/graphs-relationships) except it returns just the related object''s IDs (and context attributes, if any) instead of returning all attributes. ' operationId: graphsRelationshipsIds parameters: - description: A 65 char length id which uniquely identify the graph. in: path name: id required: true schema: type: string - description: Relationship name (see [table](ref:graph-object#relationships)) in: path name: relationship required: true schema: type: string - description: Maximum number of related objects to retrieve in: query name: limit schema: type: string - description: Continuation cursor in: query name: cursor schema: format: int32 type: integer responses: '200': content: text/plain: examples: Result: value: '' description: '200' '400': description: Bad request. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Missing or invalid API key. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Object not found. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '429': description: Rate limit or quota exceeded. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' security: - VTApiKey: [] summary: VirusTotal Get Object Descriptors Related to a Graph x-microcks-operation: delay: 0 dispatcher: FALLBACK /graphs/{id}/{relationship}: get: tags: - Threat Graphs deprecated: false description: "Graph objects have number of relationships to other objects. As mentioned in the [Relationships](https://gtidocs.virustotal.com/reference/relationships) section, those related objects can be retrieved by sending `GET` requests to the relationship URL. \n\nSome relationships are accesible only to users who have access to Google Threat Intelligence.\n\nThe relationships supported by graph objects are documented in the [Graph](https://gtidocs.virustotal.com/reference/graph-object) API object page.\n\n```json Response example for owner\n{\n \"data\": {\n \"attributes\": {\n \"first_name\": \"Richard\",\n \"last_name\": \"Hendricks\",\n \"profile_phrase\": \"CEO of Pied Piper\",\n \"reputation\": 1,\n \"status\": \"active\",\n \"user_since\": 1528111032\n },\n \"id\": \"hendricks\",\n \"links\": {\n \"self\": \"https://www.virustotal.com/api/v3/users/hendricks\"\n },\n \"type\": \"user\"\n },\n \"links\": {\n \"self\": \"https://www.virustotal.com/api/v3/graphs/g510b3e01190b9e6001f7ed7d14015558b11ca9d3e87367b6b809bbb402645bf2/owner\"\n }\n}\n```\n" operationId: graphsRelationships parameters: - description: A 65 char length id which uniquely identify the graph. in: path name: id required: true schema: type: string - description: Relationship name (see [table](ref:graph-object#relationships)) in: path name: relationship required: true schema: type: string - description: Maximum number of related objects to retrieve in: query name: limit schema: type: string - description: Continuation cursor in: query name: cursor schema: format: int32 type: integer responses: '200': content: text/plain: examples: Result: value: '' description: '200' '400': description: Bad request. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Missing or invalid API key. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '404': description: Object not found. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '429': description: Rate limit or quota exceeded. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' security: - VTApiKey: [] summary: VirusTotal Get Objects Related to a Graph x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: DataEnvelope: type: object description: Successful response envelope. The shape of `data` depends on the endpoint. properties: data: description: Endpoint-specific payload — usually a VirusTotal object or list of objects. example: {} meta: type: object description: Optional metadata about the response (cursors, counts, etc.). additionalProperties: true links: type: object description: Optional pagination links. properties: next: type: string format: uri description: URL to the next page of results. self: type: string format: uri description: URL of the current page. additionalProperties: true required: - data Error: type: object description: Standard VirusTotal API error envelope. properties: code: type: string description: Machine-readable error code. example: NotFoundError message: type: string description: Human-readable error message. example: Resource not found required: - code - message ErrorResponse: type: object description: Error response envelope returned by the VirusTotal API. properties: error: $ref: '#/components/schemas/Error' required: - error securitySchemes: VTApiKey: type: apiKey in: header name: x-apikey description: Personal VirusTotal / GTI API key. Found in the user menu of your VirusTotal account.