> For the complete documentation index, see [llms.txt](https://developer.1moneynetwork.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.1moneynetwork.com/integrations/rest-apis/tokens/grant-authority.md).

# Grant authority

{% hint style="success" %}
For action type, "Grant" means grant authority to an address, "Revoke" means revoke authority from an address.

For more details on Authority type, please refer to [Token Authority](/core-concepts/token-authority.md)
{% endhint %}

## POST /v1/tokens/grant\_authority

>

```json
{"openapi":"3.1.0","info":{"title":"om-api-rest","version":"0.1.0"},"tags":[{"name":"tokens","description":"Tokens API"}],"servers":[{"url":"https://api.testnet.1money.network","description":"Testnet API server"},{"url":"https://api.1money.network","description":"Mainnet API server"},{"url":"http://localhost:18555","description":"Local API server"}],"paths":{"/v1/tokens/grant_authority":{"post":{"tags":["tokens"],"operationId":"grant_authority","requestBody":{"description":"token authority request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenAuthorityRequest"}}},"required":true},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Hash"}}}},"400":{"description":"Client error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RESTErrorData"}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RESTErrorData"}}}},"408":{"description":"Request timeout","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RESTErrorData"}}}},"422":{"description":"Business logic error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RESTErrorData"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RESTErrorData"}}}}}}}},"components":{"schemas":{"TokenAuthorityRequest":{"allOf":[{"$ref":"#/components/schemas/TokenAuthorityPayload"},{"type":"object","required":["signature"],"properties":{"signature":{"$ref":"#/components/schemas/RestSignature"}}}]},"TokenAuthorityPayload":{"type":"object","required":["chain_id","nonce","action","authority_type","authority_address","token","value"],"properties":{"action":{"$ref":"#/components/schemas/AuthorityAction","description":"The action of the transaction: Grant or Revoke."},"authority_address":{"$ref":"#/components/schemas/AddressSchema","description":"The authority address to grant or revoke."},"authority_type":{"$ref":"#/components/schemas/AuthorityType","description":"The authority type of the transaction: Mint, MintTokens, Pause, Burn,\nBlacklist, UpdateMetadata."},"chain_id":{"type":"integer","format":"int64","description":"The chain id of the transaction.","minimum":0},"nonce":{"type":"integer","format":"int64","description":"The nonce of the transaction.","minimum":0},"token":{"$ref":"#/components/schemas/TokenAddressSchema","description":"The token address to operate."},"value":{"oneOf":[{"$ref":"#/components/schemas/U256Schema","description":"The allowance value of tokens to grant, only works for `MintTokens`\ntype."}],"default":"0"}}},"AuthorityAction":{"type":"string","enum":["Grant","Revoke"]},"AddressSchema":{"type":"string","title":"string"},"AuthorityType":{"type":"string","enum":["MasterMintBurn","MintBurnTokens","Pause","ManageList","UpdateMetadata","Bridge"]},"TokenAddressSchema":{"type":"string","title":"string"},"U256Schema":{"type":"string","title":"string"},"RestSignature":{"type":"object","description":"Signature type for REST requests.\n\nWe use this type to avoid the ambiguity of the signature type in the core\nprimitives.\n\nThis type is referred to `https://github.com/alloy-rs/alloy/blob/b2278c40b2693908e4e5108d65ade26e8d716765/crates/rpc-types-eth/src/transaction/signature.rs#L9`.","required":["r","s","v"],"properties":{"r":{"$ref":"#/components/schemas/SignatureRSchema","description":"The R field of the signature; the point on the curve."},"s":{"$ref":"#/components/schemas/SignatureSSchema","description":"The S field of the signature; the point on the curve."},"v":{"type":"integer","format":"int64","description":"For EIP-155, EIP-2930 and Blob transactions this is set to the parity (0\nfor even, 1 for odd) of the y-value of the secp256k1 signature.\n\nFor legacy transactions, this is the recovery id\n\nSee also <https://ethereum.github.io/execution-apis/api-documentation/> and <https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_gettransactionbyhash>","minimum":0}}},"SignatureRSchema":{"type":"string","title":"string","description":"Signature R schema"},"SignatureSSchema":{"type":"string","title":"string","description":"Signature S schema"},"Hash":{"type":"object","description":"Represents a transaction hash returned by the API.","required":["hash"],"properties":{"hash":{"$ref":"#/components/schemas/B256Schema"}}},"B256Schema":{"type":"string","title":"string"},"RESTErrorData":{"type":"object","required":["error_code","message"],"properties":{"error_code":{"type":"string","description":"Structured error code for programmatic handling"},"message":{"type":"string","description":"Human-readable error message"}}}}}}
```
