> ## Documentation Index
> Fetch the complete documentation index at: https://developers.particle.network/llms.txt
> Use this file to discover all available pages before exploring further.

# getContractAbi

> Learn how to use the getContractAbi JSON-RPC method.

## Contextualizing `getContractAbi`

* `getContractAbi` takes the address of a **verified** contract and returns the complete ABI. It **will return null** if the contract is not verified.

<Tip>
  <p>If you're unsure whether a given contract is verified, Etherscan displays verification status on the **Contract** tab of smart contracts</p>
  Check it at: [https://etherscan.io/address/YOUR\_CONTRACT\_ADDRESS#code](https://etherscan.io/address/0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d#code)
</Tip>

***

## Query example

```javascript JavaScript theme={null}
const axios = require('axios');

(async () => {
    const response = await axios.post('https://rpc.particle.network/evm-chain', {
        chainId: 56,
        jsonrpc: '2.0',
        id: 1,
        method: "particle_abi_getContractAbi",
        params: [
            "0x2170Ed0880ac9A755fd29B2688956BD959F933F8", 
            true,
        ]
    }, {
        auth: {
            username: 'Your Project Id',
            password: 'Your Project Server Key',
        }
    });

    console.log(response.data);
})();
```


## OpenAPI

````yaml openapi-evm POST /#particle_abi_getContractAbi
openapi: 3.0.0
info:
  title: Particle Network Enhanced RPC
  version: 1.0.0
servers:
  - url: https://rpc.particle.network/evm-chain
security: []
paths:
  /#particle_abi_getContractAbi:
    post:
      summary: getContractABI
      operationId: getContractABI
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetContractABIRequest'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetContractABIResponse'
      security:
        - basicAuth: []
components:
  schemas:
    GetContractABIRequest:
      allOf:
        - $ref: '#/components/schemas/RPCRequest'
        - type: object
          required:
            - method
          properties:
            method:
              type: string
              default: particle_abi_getContractAbi
              enum:
                - particle_abi_getContractAbi
            params:
              type: array
              items:
                anyOf:
                  - type: string
                  - type: boolean
    GetContractABIResponse:
      allOf:
        - $ref: '#/components/schemas/RPCResponse'
        - type: object
          properties:
            result:
              type: string
              description: Contract ABI.
    RPCRequest:
      type: object
      required:
        - jsonrpc
        - id
        - method
        - params
        - chainId
      properties:
        jsonrpc:
          type: string
          default: 2
          description: Version of the JSON-RPC protocol, should be 2.0.
          example: '2.0'
        id:
          type: integer
          default: 1
          description: The request identifier.
          example: 1
        method:
          type: string
          description: API method being called.
        chainId:
          type: integer
          example: 1
          description: The chain ID.
        params:
          type: array
          description: Parameters for the API method call.
    RPCResponse:
      type: object
      properties:
        jsonrpc:
          type: string
          description: Version of the JSON-RPC protocol, should be 2.0.
          example: '2.0'
        id:
          type: integer
          description: The request identifier.
          example: 1
        result:
          anyOf:
            - $ref: '#/components/schemas/AnyValue'
    AnyValue:
      anyOf:
        - type: string
        - type: number
        - type: integer
        - type: boolean
        - type: object
        - type: array
          items: {}
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic

````