RRUFUS Help

Eventos

GET/events

Listar eventos

Requiere el tipo de acceso con llave READ o READ_WRITE api.

URL basehttps://api.runonrufus.com/v0
AutenticaciónCabecera de clave API

Autenticación

Envía una de las cabeceras de clave API compatibles en cada solicitud.

api_keyAPI key for authentication.
x-api-keyAPI key for authentication (alternate header).

Parámetros

NombreUbicaciónTipoObligatorioDescripción
pagequeryintegerOpcional1-based page.
limitqueryintegerOpcionalMax items per page (events).

Respuestas

200SuccessEventsListResponse
403ForbiddenEnvelopeAny
500Internal server errorEnvelopeNull
curl --request GET \
  --url 'https://api.runonrufus.com/v0/events?page=1&limit=1000' \
  --header 'accept: application/json' \
  --header 'api_key: YOUR_API_KEY'
Operación OpenAPI original
{
  "openapi": "3.0.3",
  "info": {
    "title": "RUFUS Public REST API",
    "version": "0.1.0"
  },
  "tags": [
    {
      "name": "Events"
    }
  ],
  "servers": [
    {
      "url": "https://api.runonrufus.com/v0",
      "description": "Production (v0)"
    }
  ],
  "security": [
    {
      "ApiKeyHeader": []
    },
    {
      "XApiKeyHeader": []
    }
  ],
  "components": {
    "securitySchemes": {
      "ApiKeyHeader": {
        "type": "apiKey",
        "in": "header",
        "name": "api_key",
        "description": "API key for authentication."
      },
      "XApiKeyHeader": {
        "type": "apiKey",
        "in": "header",
        "name": "x-api-key",
        "description": "API key for authentication (alternate header)."
      }
    },
    "parameters": {
      "Page": {
        "name": "page",
        "in": "query",
        "required": false,
        "schema": {
          "type": "integer",
          "minimum": 1,
          "default": 1
        },
        "description": "1-based page."
      },
      "LimitEvents": {
        "name": "limit",
        "in": "query",
        "required": false,
        "schema": {
          "type": "integer",
          "minimum": 1,
          "maximum": 1000,
          "default": 1000
        },
        "description": "Max items per page (events)."
      }
    },
    "schemas": {
      "EventsListResponse": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "body": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
              "description": {
                "type": "string"
              },
              "result": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/EventSummary"
                }
              },
              "pagination": {
                "$ref": "#/components/schemas/Pagination"
              }
            },
            "required": [
              "description",
              "result",
              "pagination"
            ]
          }
        },
        "required": [
          "body"
        ]
      },
      "EventSummary": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "event_token": {
            "type": "string"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "edition": {
            "type": "string",
            "nullable": true
          },
          "location": {
            "type": "string",
            "nullable": true
          },
          "start_date": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "end_date": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "status": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "event_token"
        ]
      },
      "Pagination": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "page": {
            "type": "integer",
            "minimum": 1
          },
          "limit": {
            "type": "integer",
            "minimum": 1
          },
          "total": {
            "type": "integer",
            "minimum": 0
          },
          "has_more": {
            "type": "boolean"
          }
        },
        "required": [
          "page",
          "limit",
          "total",
          "has_more"
        ]
      },
      "EnvelopeAny": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "body": {
            "description": "Operation result body."
          }
        }
      },
      "EnvelopeNull": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "body": {
            "nullable": true
          }
        },
        "required": [
          "body"
        ]
      }
    },
    "responses": {
      "Forbidden": {
        "description": "Forbidden",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/EnvelopeAny"
            }
          }
        }
      },
      "InternalError": {
        "description": "Internal server error",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/EnvelopeNull"
            }
          }
        }
      }
    }
  },
  "paths": {
    "/events": {
      "get": {
        "tags": [
          "Events"
        ],
        "summary": "List events",
        "description": "Requires `READ` or `READ_WRITE` api key access type.",
        "parameters": [
          {
            "$ref": "#/components/parameters/Page"
          },
          {
            "$ref": "#/components/parameters/LimitEvents"
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EventsListResponse"
                }
              }
            }
          },
          "403": {
            "$ref": "#/components/responses/Forbidden"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    }
  }
}
GET/events/{event_token}

Obtener evento por token

Requiere el tipo de acceso con llave READ o READ_WRITE api.

URL basehttps://api.runonrufus.com/v0
AutenticaciónCabecera de clave API

Autenticación

Envía una de las cabeceras de clave API compatibles en cada solicitud.

api_keyAPI key for authentication.
x-api-keyAPI key for authentication (alternate header).

Respuestas

200SuccessEventGetResponse
403ForbiddenEnvelopeAny
404Not foundEnvelopeAny
500Internal server errorEnvelopeNull
curl --request GET \
  --url 'https://api.runonrufus.com/v0/events/{event_token}' \
  --header 'accept: application/json' \
  --header 'api_key: YOUR_API_KEY'
Operación OpenAPI original
{
  "openapi": "3.0.3",
  "info": {
    "title": "RUFUS Public REST API",
    "version": "0.1.0"
  },
  "tags": [
    {
      "name": "Events"
    }
  ],
  "servers": [
    {
      "url": "https://api.runonrufus.com/v0",
      "description": "Production (v0)"
    }
  ],
  "security": [
    {
      "ApiKeyHeader": []
    },
    {
      "XApiKeyHeader": []
    }
  ],
  "components": {
    "securitySchemes": {
      "ApiKeyHeader": {
        "type": "apiKey",
        "in": "header",
        "name": "api_key",
        "description": "API key for authentication."
      },
      "XApiKeyHeader": {
        "type": "apiKey",
        "in": "header",
        "name": "x-api-key",
        "description": "API key for authentication (alternate header)."
      }
    },
    "schemas": {
      "EventGetResponse": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "body": {
            "type": "object",
            "properties": {
              "description": {
                "type": "string"
              },
              "result": {
                "type": "object",
                "description": "Event details (fields follow RRM schema; large object).",
                "additionalProperties": true
              }
            },
            "required": [
              "description"
            ]
          }
        },
        "required": [
          "body"
        ]
      },
      "EnvelopeAny": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "body": {
            "description": "Operation result body."
          }
        }
      },
      "EnvelopeNull": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "body": {
            "nullable": true
          }
        },
        "required": [
          "body"
        ]
      }
    },
    "responses": {
      "Forbidden": {
        "description": "Forbidden",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/EnvelopeAny"
            }
          }
        }
      },
      "NotFound": {
        "description": "Not found",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/EnvelopeAny"
            }
          }
        }
      },
      "InternalError": {
        "description": "Internal server error",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/EnvelopeNull"
            }
          }
        }
      }
    }
  },
  "paths": {
    "/events/{event_token}": {
      "get": {
        "tags": [
          "Events"
        ],
        "summary": "Get event by token",
        "description": "Requires `READ` or `READ_WRITE` api key access type.",
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EventGetResponse"
                }
              }
            }
          },
          "403": {
            "$ref": "#/components/responses/Forbidden"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    }
  }
}
GET/events/{event_token}/participants

Listar participantes por evento

Requiere el tipo de acceso con llave READ o READ_WRITE api.

URL basehttps://api.runonrufus.com/v0
AutenticaciónCabecera de clave API

Autenticación

Envía una de las cabeceras de clave API compatibles en cada solicitud.

api_keyAPI key for authentication.
x-api-keyAPI key for authentication (alternate header).

Parámetros

NombreUbicaciónTipoObligatorioDescripción
pagequeryintegerOpcional1-based page.
limitqueryintegerOpcionalMax items per page (participants).
bibquerystringOpcionalFilter participants by bib.
chipquerystringOpcionalFilter participants by chip.
race_tokenquerystringOpcionalFilter participants by race_token.
statusquerystringOpcionalFilter participants by status.

Respuestas

200SuccessParticipantsListResponse
403ForbiddenEnvelopeAny
404Not foundEnvelopeAny
500Internal server errorEnvelopeNull
curl --request GET \
  --url 'https://api.runonrufus.com/v0/events/{event_token}/participants?page=1&limit=1000&bib=%7Bbib%7D&chip=%7Bchip%7D&race_token=%7Brace_token%7D&status=%7Bstatus%7D' \
  --header 'accept: application/json' \
  --header 'api_key: YOUR_API_KEY'
Operación OpenAPI original
{
  "openapi": "3.0.3",
  "info": {
    "title": "RUFUS Public REST API",
    "version": "0.1.0"
  },
  "tags": [
    {
      "name": "Events"
    }
  ],
  "servers": [
    {
      "url": "https://api.runonrufus.com/v0",
      "description": "Production (v0)"
    }
  ],
  "security": [
    {
      "ApiKeyHeader": []
    },
    {
      "XApiKeyHeader": []
    }
  ],
  "components": {
    "securitySchemes": {
      "ApiKeyHeader": {
        "type": "apiKey",
        "in": "header",
        "name": "api_key",
        "description": "API key for authentication."
      },
      "XApiKeyHeader": {
        "type": "apiKey",
        "in": "header",
        "name": "x-api-key",
        "description": "API key for authentication (alternate header)."
      }
    },
    "parameters": {
      "Page": {
        "name": "page",
        "in": "query",
        "required": false,
        "schema": {
          "type": "integer",
          "minimum": 1,
          "default": 1
        },
        "description": "1-based page."
      },
      "LimitParticipants": {
        "name": "limit",
        "in": "query",
        "required": false,
        "schema": {
          "type": "integer",
          "minimum": 1,
          "maximum": 1000,
          "default": 1000
        },
        "description": "Max items per page (participants)."
      },
      "ParticipantBib": {
        "name": "bib",
        "in": "query",
        "required": false,
        "schema": {
          "type": "string"
        },
        "description": "Filter participants by bib."
      },
      "ParticipantChip": {
        "name": "chip",
        "in": "query",
        "required": false,
        "schema": {
          "type": "string"
        },
        "description": "Filter participants by chip."
      },
      "ParticipantRaceToken": {
        "name": "race_token",
        "in": "query",
        "required": false,
        "schema": {
          "type": "string"
        },
        "description": "Filter participants by race_token."
      },
      "ParticipantStatus": {
        "name": "status",
        "in": "query",
        "required": false,
        "schema": {
          "type": "string"
        },
        "description": "Filter participants by status."
      }
    },
    "schemas": {
      "ParticipantsListResponse": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "body": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
              "description": {
                "type": "string"
              },
              "result": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ParticipantSummary"
                }
              },
              "pagination": {
                "$ref": "#/components/schemas/Pagination"
              }
            },
            "required": [
              "description",
              "result",
              "pagination"
            ]
          }
        },
        "required": [
          "body"
        ]
      },
      "ParticipantSummary": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "event_token": {
            "type": "string"
          },
          "participant_token": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "lastname": {
            "type": "string",
            "nullable": true
          },
          "bib": {
            "type": "string",
            "nullable": true
          },
          "chip": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string",
            "nullable": true
          },
          "gender": {
            "type": "string",
            "nullable": true
          },
          "dob": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "yob": {
            "type": "integer",
            "nullable": true
          },
          "country": {
            "type": "string",
            "nullable": true
          },
          "city": {
            "type": "string",
            "nullable": true
          },
          "age_group": {
            "type": "string",
            "nullable": true
          },
          "team": {
            "type": "string",
            "nullable": true
          },
          "club": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "format": "email",
            "nullable": true
          },
          "telephone": {
            "type": "string",
            "nullable": true
          },
          "group_id": {
            "type": "string",
            "nullable": true
          },
          "race_token": {
            "type": "string",
            "nullable": true
          },
          "custom_fields": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/CustomField"
            }
          },
          "individual_start_time": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "event_token",
          "participant_token",
          "name"
        ]
      },
      "CustomField": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "field_name": {
            "type": "string"
          },
          "value": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "field_name",
          "value"
        ]
      },
      "Pagination": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "page": {
            "type": "integer",
            "minimum": 1
          },
          "limit": {
            "type": "integer",
            "minimum": 1
          },
          "total": {
            "type": "integer",
            "minimum": 0
          },
          "has_more": {
            "type": "boolean"
          }
        },
        "required": [
          "page",
          "limit",
          "total",
          "has_more"
        ]
      },
      "EnvelopeAny": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "body": {
            "description": "Operation result body."
          }
        }
      },
      "EnvelopeNull": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "body": {
            "nullable": true
          }
        },
        "required": [
          "body"
        ]
      }
    },
    "responses": {
      "Forbidden": {
        "description": "Forbidden",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/EnvelopeAny"
            }
          }
        }
      },
      "NotFound": {
        "description": "Not found",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/EnvelopeAny"
            }
          }
        }
      },
      "InternalError": {
        "description": "Internal server error",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/EnvelopeNull"
            }
          }
        }
      }
    }
  },
  "paths": {
    "/events/{event_token}/participants": {
      "get": {
        "tags": [
          "Events"
        ],
        "summary": "List participants by event",
        "description": "Requires `READ` or `READ_WRITE` api key access type.",
        "parameters": [
          {
            "$ref": "#/components/parameters/Page"
          },
          {
            "$ref": "#/components/parameters/LimitParticipants"
          },
          {
            "$ref": "#/components/parameters/ParticipantBib"
          },
          {
            "$ref": "#/components/parameters/ParticipantChip"
          },
          {
            "$ref": "#/components/parameters/ParticipantRaceToken"
          },
          {
            "$ref": "#/components/parameters/ParticipantStatus"
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ParticipantsListResponse"
                }
              }
            }
          },
          "403": {
            "$ref": "#/components/responses/Forbidden"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    }
  }
}
POST/events/{event_token}/participants

Crear participante

Requiere el tipo de acceso de clave WRITE o READ_WRITE api. Las correcciones de los participantes (PATCH/DELETE) no se exponen intencionadamente en el API público.

URL basehttps://api.runonrufus.com/v0
AutenticaciónCabecera de clave API

Autenticación

Envía una de las cabeceras de clave API compatibles en cada solicitud.

api_keyAPI key for authentication.
x-api-keyAPI key for authentication (alternate header).

Cuerpo de la solicitud

application/json

Este esquema no define propiedades con nombre.

Respuestas

201Participant inserted succesfullyCreateParticipantResponse
400Bad requestEnvelopeAny
403Forbidden (includes plan enforcement)EnvelopeAny
404Not foundEnvelopeAny
409Conflict (duplicate bib/chip/participant)EnvelopeAny
413Payload too largeEnvelopeAny
500Internal server errorEnvelopeNull
curl --request POST \
  --url 'https://api.runonrufus.com/v0/events/{event_token}/participants' \
  --header 'accept: application/json' \
  --header 'api_key: YOUR_API_KEY' \
  --header 'content-type: application/json' \
  --data '{
  "name": "Sample name",
  "lastname": "Sample name",
  "bib": "string",
  "chip": "string",
  "gender": "string",
  "dob": "2026-09-02T10:30:00.000Z",
  "yob": 1,
  "country": "string",
  "city": "string",
  "age_group": "string",
  "team": "string",
  "club": "string",
  "email": "timer@example.com",
  "telephone": "string",
  "group_id": "string",
  "race_token": "string",
  "custom_fields": [
    {
      "field_name": "Sample name",
      "value": "string"
    }
  ],
  "individual_start_time": "string"
}'
Operación OpenAPI original
{
  "openapi": "3.0.3",
  "info": {
    "title": "RUFUS Public REST API",
    "version": "0.1.0"
  },
  "tags": [
    {
      "name": "Events"
    }
  ],
  "servers": [
    {
      "url": "https://api.runonrufus.com/v0",
      "description": "Production (v0)"
    }
  ],
  "security": [
    {
      "ApiKeyHeader": []
    },
    {
      "XApiKeyHeader": []
    }
  ],
  "components": {
    "securitySchemes": {
      "ApiKeyHeader": {
        "type": "apiKey",
        "in": "header",
        "name": "api_key",
        "description": "API key for authentication."
      },
      "XApiKeyHeader": {
        "type": "apiKey",
        "in": "header",
        "name": "x-api-key",
        "description": "API key for authentication (alternate header)."
      }
    },
    "schemas": {
      "CreateParticipantRequest": {
        "allOf": [
          {
            "$ref": "#/components/schemas/Participant"
          }
        ]
      },
      "Participant": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "name": {
            "type": "string"
          },
          "lastname": {
            "type": "string",
            "nullable": true
          },
          "bib": {
            "type": "string",
            "nullable": true
          },
          "chip": {
            "type": "string",
            "nullable": true
          },
          "gender": {
            "type": "string",
            "nullable": true
          },
          "dob": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "yob": {
            "type": "integer",
            "nullable": true
          },
          "country": {
            "type": "string",
            "nullable": true
          },
          "city": {
            "type": "string",
            "nullable": true
          },
          "age_group": {
            "type": "string",
            "nullable": true
          },
          "team": {
            "type": "string",
            "nullable": true
          },
          "club": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "format": "email",
            "nullable": true
          },
          "telephone": {
            "type": "string",
            "nullable": true
          },
          "group_id": {
            "type": "string",
            "nullable": true
          },
          "race_token": {
            "type": "string",
            "nullable": true
          },
          "custom_fields": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/CustomField"
            }
          },
          "individual_start_time": {
            "type": "string",
            "nullable": true,
            "description": "HH:mm:ss"
          }
        },
        "required": [
          "name",
          "bib"
        ]
      },
      "CustomField": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "field_name": {
            "type": "string"
          },
          "value": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "field_name",
          "value"
        ]
      },
      "CreateParticipantResponse": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "body": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
              "description": {
                "type": "string"
              },
              "event_token": {
                "type": "string"
              },
              "participant_token": {
                "type": "string"
              },
              "result": {
                "type": "object",
                "additionalProperties": true
              }
            },
            "required": [
              "description",
              "event_token",
              "participant_token"
            ]
          }
        },
        "required": [
          "body"
        ]
      },
      "EnvelopeAny": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "body": {
            "description": "Operation result body."
          }
        }
      },
      "EnvelopeNull": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "body": {
            "nullable": true
          }
        },
        "required": [
          "body"
        ]
      }
    },
    "responses": {
      "BadRequest": {
        "description": "Bad request",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/EnvelopeAny"
            }
          }
        }
      },
      "NotFound": {
        "description": "Not found",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/EnvelopeAny"
            }
          }
        }
      },
      "PayloadTooLarge": {
        "description": "Payload too large",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/EnvelopeAny"
            }
          }
        }
      },
      "InternalError": {
        "description": "Internal server error",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/EnvelopeNull"
            }
          }
        }
      }
    }
  },
  "paths": {
    "/events/{event_token}/participants": {
      "post": {
        "tags": [
          "Events"
        ],
        "summary": "Create participant",
        "description": "Requires `WRITE` or `READ_WRITE` api key access type.\n\nParticipant corrections (PATCH/DELETE) are intentionally not exposed in the public API.\n",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateParticipantRequest"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Participant inserted succesfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateParticipantResponse"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "403": {
            "description": "Forbidden (includes plan enforcement)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EnvelopeAny"
                }
              }
            }
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "409": {
            "description": "Conflict (duplicate bib/chip/participant)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EnvelopeAny"
                }
              }
            }
          },
          "413": {
            "$ref": "#/components/responses/PayloadTooLarge"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    }
  }
}
GET/events/{event_token}/participants/{participant_token}

Obtener participante por token

Requiere el tipo de acceso con llave READ o READ_WRITE api.

URL basehttps://api.runonrufus.com/v0
AutenticaciónCabecera de clave API

Autenticación

Envía una de las cabeceras de clave API compatibles en cada solicitud.

api_keyAPI key for authentication.
x-api-keyAPI key for authentication (alternate header).

Respuestas

200SuccessParticipantGetResponse
403ForbiddenEnvelopeAny
404Not foundEnvelopeAny
500Internal server errorEnvelopeNull
curl --request GET \
  --url 'https://api.runonrufus.com/v0/events/{event_token}/participants/{participant_token}' \
  --header 'accept: application/json' \
  --header 'api_key: YOUR_API_KEY'
Operación OpenAPI original
{
  "openapi": "3.0.3",
  "info": {
    "title": "RUFUS Public REST API",
    "version": "0.1.0"
  },
  "tags": [
    {
      "name": "Events"
    }
  ],
  "servers": [
    {
      "url": "https://api.runonrufus.com/v0",
      "description": "Production (v0)"
    }
  ],
  "security": [
    {
      "ApiKeyHeader": []
    },
    {
      "XApiKeyHeader": []
    }
  ],
  "components": {
    "securitySchemes": {
      "ApiKeyHeader": {
        "type": "apiKey",
        "in": "header",
        "name": "api_key",
        "description": "API key for authentication."
      },
      "XApiKeyHeader": {
        "type": "apiKey",
        "in": "header",
        "name": "x-api-key",
        "description": "API key for authentication (alternate header)."
      }
    },
    "schemas": {
      "ParticipantGetResponse": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "body": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
              "description": {
                "type": "string"
              },
              "result": {
                "$ref": "#/components/schemas/ParticipantSummary"
              }
            },
            "required": [
              "description",
              "result"
            ]
          }
        },
        "required": [
          "body"
        ]
      },
      "ParticipantSummary": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "event_token": {
            "type": "string"
          },
          "participant_token": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "lastname": {
            "type": "string",
            "nullable": true
          },
          "bib": {
            "type": "string",
            "nullable": true
          },
          "chip": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string",
            "nullable": true
          },
          "gender": {
            "type": "string",
            "nullable": true
          },
          "dob": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "yob": {
            "type": "integer",
            "nullable": true
          },
          "country": {
            "type": "string",
            "nullable": true
          },
          "city": {
            "type": "string",
            "nullable": true
          },
          "age_group": {
            "type": "string",
            "nullable": true
          },
          "team": {
            "type": "string",
            "nullable": true
          },
          "club": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "format": "email",
            "nullable": true
          },
          "telephone": {
            "type": "string",
            "nullable": true
          },
          "group_id": {
            "type": "string",
            "nullable": true
          },
          "race_token": {
            "type": "string",
            "nullable": true
          },
          "custom_fields": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/CustomField"
            }
          },
          "individual_start_time": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "event_token",
          "participant_token",
          "name"
        ]
      },
      "CustomField": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "field_name": {
            "type": "string"
          },
          "value": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "field_name",
          "value"
        ]
      },
      "EnvelopeAny": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "body": {
            "description": "Operation result body."
          }
        }
      },
      "EnvelopeNull": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "body": {
            "nullable": true
          }
        },
        "required": [
          "body"
        ]
      }
    },
    "responses": {
      "Forbidden": {
        "description": "Forbidden",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/EnvelopeAny"
            }
          }
        }
      },
      "NotFound": {
        "description": "Not found",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/EnvelopeAny"
            }
          }
        }
      },
      "InternalError": {
        "description": "Internal server error",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/EnvelopeNull"
            }
          }
        }
      }
    }
  },
  "paths": {
    "/events/{event_token}/participants/{participant_token}": {
      "get": {
        "tags": [
          "Events"
        ],
        "summary": "Get participant by token",
        "description": "Requires `READ` or `READ_WRITE` api key access type.",
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ParticipantGetResponse"
                }
              }
            }
          },
          "403": {
            "$ref": "#/components/responses/Forbidden"
          },
          "404": {
            "$ref": "#/components/responses/NotFound"
          },
          "500": {
            "$ref": "#/components/responses/InternalError"
          }
        }
      }
    }
  }
}
¿Te resultó útil este artículo?Nuestro equipo está aquí cuando necesites ayuda.
Contactar con soporte