Entitlements
Listar Concesiones
Listar todas las concesiones para un derecho, con filtros opcionales por estado y ID de cliente. Cada concesión incluye el estado de cumplimiento por cliente, incluidas las claves de licencia y las URL de descarga de archivos digitales donde sea aplicable.
GET
/
entitlements
/
{id}
/
grants
JavaScript
import DodoPayments from 'dodopayments';
const client = new DodoPayments({
bearerToken: process.env['DODO_PAYMENTS_API_KEY'], // This is the default and can be omitted
});
// Automatically fetches more pages as needed.
for await (const entitlementGrant of client.entitlements.grants.list('ent_jt7jcvI79Xh8eehqgWdcm')) {
console.log(entitlementGrant.id);
}import os
from dodopayments import DodoPayments
client = DodoPayments(
bearer_token=os.environ.get("DODO_PAYMENTS_API_KEY"), # This is the default and can be omitted
)
page = client.entitlements.grants.list(
id="ent_jt7jcvI79Xh8eehqgWdcm",
)
page = page.items[0]
print(page.id)package main
import (
"context"
"fmt"
"github.com/dodopayments/dodopayments-go"
"github.com/dodopayments/dodopayments-go/option"
)
func main() {
client := dodopayments.NewClient(
option.WithBearerToken("My Bearer Token"),
)
page, err := client.Entitlements.Grants.List(
context.TODO(),
"ent_jt7jcvI79Xh8eehqgWdcm",
dodopayments.EntitlementGrantListParams{},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", page)
}
package com.dodopayments.api.example;
import com.dodopayments.api.client.DodoPaymentsClient;
import com.dodopayments.api.client.okhttp.DodoPaymentsOkHttpClient;
import com.dodopayments.api.models.entitlements.grants.GrantListPage;
import com.dodopayments.api.models.entitlements.grants.GrantListParams;
public final class Main {
private Main() {}
public static void main(String[] args) {
DodoPaymentsClient client = DodoPaymentsOkHttpClient.fromEnv();
GrantListPage page = client.entitlements().grants().list("ent_jt7jcvI79Xh8eehqgWdcm");
}
}package com.dodopayments.api.example
import com.dodopayments.api.client.DodoPaymentsClient
import com.dodopayments.api.client.okhttp.DodoPaymentsOkHttpClient
import com.dodopayments.api.models.entitlements.grants.GrantListPage
import com.dodopayments.api.models.entitlements.grants.GrantListParams
fun main() {
val client: DodoPaymentsClient = DodoPaymentsOkHttpClient.fromEnv()
val page: GrantListPage = client.entitlements().grants().list("ent_jt7jcvI79Xh8eehqgWdcm")
}require "dodopayments"
dodo_payments = Dodopayments::Client.new(
bearer_token: "My Bearer Token",
environment: "test_mode" # defaults to "live_mode"
)
page = dodo_payments.entitlements.grants.list("ent_jt7jcvI79Xh8eehqgWdcm")
puts(page)<?php
require_once dirname(__DIR__) . '/vendor/autoload.php';
use Dodopayments\Client;
use Dodopayments\Core\Exceptions\APIException;
$client = new Client(
bearerToken: getenv('DODO_PAYMENTS_API_KEY') ?: 'My Bearer Token',
environment: 'test_mode',
);
try {
$page = $client->entitlements->grants->list(
'ent_jt7jcvI79Xh8eehqgWdcm',
customerID: 'customer_id',
pageNumber: 0,
pageSize: 0,
status: 'Pending',
);
var_dump($page);
} catch (APIException $e) {
echo $e->getMessage();
}using System;
using DodoPayments.Client;
using DodoPayments.Client.Models.Entitlements.Grants;
DodoPaymentsClient client = new();
GrantListParams parameters = new() { ID = "ent_jt7jcvI79Xh8eehqgWdcm" };
var page = await client.Entitlements.Grants.List(parameters);
await foreach (var item in page.Paginate())
{
Console.WriteLine(item);
}use dodopayments::Client;
#[tokio::main]
async fn main() -> dodopayments::Result<()> {
let client = Client::from_env()?;
let id = "id";
let result = client
.entitlements()
.grants()
.list()
.id(id)
.query(serde_json::json!({}))
.await?;
println!("{result:?}");
Ok(())
}curl --request GET \
--url https://test.dodopayments.com/entitlements/{id}/grants \
--header 'Authorization: Bearer <token>'{
"items": [
{
"brand_id": "<string>",
"business_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"customer_id": "<string>",
"entitlement_id": "<string>",
"id": "<string>",
"integration_type": "discord",
"metadata": {},
"status": "Pending",
"updated_at": "2023-11-07T05:31:56Z",
"delivered_at": "2023-11-07T05:31:56Z",
"digital_product_delivery": {
"files": [
{
"download_url": "<string>",
"expires_in": 123,
"file_id": "<string>",
"filename": "<string>",
"content_type": "<string>",
"file_size": 123
}
],
"external_url": "<string>",
"instructions": "<string>"
},
"error_code": "<string>",
"error_message": "<string>",
"feature": {
"feature_id": "<string>",
"feature_type": "boolean"
},
"license_key": {
"activations_used": 123,
"id": "<string>",
"key": "<string>",
"status": "active",
"activations_limit": 123,
"expires_at": "2023-11-07T05:31:56Z"
},
"oauth_expires_at": "2023-11-07T05:31:56Z",
"oauth_url": "<string>",
"payment_id": "<string>",
"revocation_reason": "<string>",
"revoked_at": "2023-11-07T05:31:56Z",
"subscription_id": "<string>"
}
]
}Autorizaciones
Send your API key as a bearer token: Authorization: Bearer <api_key>. A test mode key starts with dodo_test_, for example dodo_test_AbCd1234EfGh5678.<secret>. A live mode key starts with dodo_live_. Use a test mode key on test.dodopayments.com and a live mode key on live.dodopayments.com. Keys from before these tags have no tag and operate as before.
Parámetros de consulta
Última modificación el 13 de mayo de 2026
¿Esta página le ayudó?
⌘I
JavaScript
import DodoPayments from 'dodopayments';
const client = new DodoPayments({
bearerToken: process.env['DODO_PAYMENTS_API_KEY'], // This is the default and can be omitted
});
// Automatically fetches more pages as needed.
for await (const entitlementGrant of client.entitlements.grants.list('ent_jt7jcvI79Xh8eehqgWdcm')) {
console.log(entitlementGrant.id);
}import os
from dodopayments import DodoPayments
client = DodoPayments(
bearer_token=os.environ.get("DODO_PAYMENTS_API_KEY"), # This is the default and can be omitted
)
page = client.entitlements.grants.list(
id="ent_jt7jcvI79Xh8eehqgWdcm",
)
page = page.items[0]
print(page.id)package main
import (
"context"
"fmt"
"github.com/dodopayments/dodopayments-go"
"github.com/dodopayments/dodopayments-go/option"
)
func main() {
client := dodopayments.NewClient(
option.WithBearerToken("My Bearer Token"),
)
page, err := client.Entitlements.Grants.List(
context.TODO(),
"ent_jt7jcvI79Xh8eehqgWdcm",
dodopayments.EntitlementGrantListParams{},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", page)
}
package com.dodopayments.api.example;
import com.dodopayments.api.client.DodoPaymentsClient;
import com.dodopayments.api.client.okhttp.DodoPaymentsOkHttpClient;
import com.dodopayments.api.models.entitlements.grants.GrantListPage;
import com.dodopayments.api.models.entitlements.grants.GrantListParams;
public final class Main {
private Main() {}
public static void main(String[] args) {
DodoPaymentsClient client = DodoPaymentsOkHttpClient.fromEnv();
GrantListPage page = client.entitlements().grants().list("ent_jt7jcvI79Xh8eehqgWdcm");
}
}package com.dodopayments.api.example
import com.dodopayments.api.client.DodoPaymentsClient
import com.dodopayments.api.client.okhttp.DodoPaymentsOkHttpClient
import com.dodopayments.api.models.entitlements.grants.GrantListPage
import com.dodopayments.api.models.entitlements.grants.GrantListParams
fun main() {
val client: DodoPaymentsClient = DodoPaymentsOkHttpClient.fromEnv()
val page: GrantListPage = client.entitlements().grants().list("ent_jt7jcvI79Xh8eehqgWdcm")
}require "dodopayments"
dodo_payments = Dodopayments::Client.new(
bearer_token: "My Bearer Token",
environment: "test_mode" # defaults to "live_mode"
)
page = dodo_payments.entitlements.grants.list("ent_jt7jcvI79Xh8eehqgWdcm")
puts(page)<?php
require_once dirname(__DIR__) . '/vendor/autoload.php';
use Dodopayments\Client;
use Dodopayments\Core\Exceptions\APIException;
$client = new Client(
bearerToken: getenv('DODO_PAYMENTS_API_KEY') ?: 'My Bearer Token',
environment: 'test_mode',
);
try {
$page = $client->entitlements->grants->list(
'ent_jt7jcvI79Xh8eehqgWdcm',
customerID: 'customer_id',
pageNumber: 0,
pageSize: 0,
status: 'Pending',
);
var_dump($page);
} catch (APIException $e) {
echo $e->getMessage();
}using System;
using DodoPayments.Client;
using DodoPayments.Client.Models.Entitlements.Grants;
DodoPaymentsClient client = new();
GrantListParams parameters = new() { ID = "ent_jt7jcvI79Xh8eehqgWdcm" };
var page = await client.Entitlements.Grants.List(parameters);
await foreach (var item in page.Paginate())
{
Console.WriteLine(item);
}use dodopayments::Client;
#[tokio::main]
async fn main() -> dodopayments::Result<()> {
let client = Client::from_env()?;
let id = "id";
let result = client
.entitlements()
.grants()
.list()
.id(id)
.query(serde_json::json!({}))
.await?;
println!("{result:?}");
Ok(())
}curl --request GET \
--url https://test.dodopayments.com/entitlements/{id}/grants \
--header 'Authorization: Bearer <token>'{
"items": [
{
"brand_id": "<string>",
"business_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"customer_id": "<string>",
"entitlement_id": "<string>",
"id": "<string>",
"integration_type": "discord",
"metadata": {},
"status": "Pending",
"updated_at": "2023-11-07T05:31:56Z",
"delivered_at": "2023-11-07T05:31:56Z",
"digital_product_delivery": {
"files": [
{
"download_url": "<string>",
"expires_in": 123,
"file_id": "<string>",
"filename": "<string>",
"content_type": "<string>",
"file_size": 123
}
],
"external_url": "<string>",
"instructions": "<string>"
},
"error_code": "<string>",
"error_message": "<string>",
"feature": {
"feature_id": "<string>",
"feature_type": "boolean"
},
"license_key": {
"activations_used": 123,
"id": "<string>",
"key": "<string>",
"status": "active",
"activations_limit": 123,
"expires_at": "2023-11-07T05:31:56Z"
},
"oauth_expires_at": "2023-11-07T05:31:56Z",
"oauth_url": "<string>",
"payment_id": "<string>",
"revocation_reason": "<string>",
"revoked_at": "2023-11-07T05:31:56Z",
"subscription_id": "<string>"
}
]
}